Замените блок / заполнитель, используя Gulp - PullRequest
0 голосов
/ 28 апреля 2020

Мне нужно заменить следующие блоки кода, пока .pipe -ing dev. html to publi c. html, используя Gulp

<!-- replaceStart: nameOfBlock-css -->
  <link href="/css/one.css" />
  <link href="/css/two.css" />
  <link href="/css/three.css" />
<!-- replaceEnd-->

<!-- replaceStart: nameOfBlock-js -->
  <link href="/js/one.js"/>
  <link href="/js/two.js/>
<!-- replaceEnd-->

с содержанием minifiedCSSLinks. css

<link href="/css/oneTwoThree.min.css" />

и minifiedJSLink. js

<link href="/js/oneTwo.min.js" />

gulp- html -relace , gulp-replace или gulp-string-replace , могут выполнять эту работу, но я не знаю, как их сделать просто захватите содержимое файла (помимо чтения содержимого файлов и передачи функции замены в виде строки - я хочу верить, что модули могут это делать). В идеале я хочу что-то подобное в gulpfile. js:

gulp.src('default.html')
.replace({nameOfBlock-css: 'minifiedCSSLinks.html'})
.replace({nameOfBlock-js: 'minifiedJSLinks.html'})
...

РЕДАКТИРОВАТЬ: *. Min.css | js сценарии и стили будет создан путем объединения и минимизации оригинала *. css | js. Исходные файлы используются во время разработки, а минимизированный вывод будет использоваться в производстве. Поэтому в процессе сборки Gulp теги ссылок в файлах html также необходимо изменить, чтобы отразить это и указать на вновь созданные файлы *. Min .

1 Ответ

0 голосов
/ 28 апреля 2020

Хорошо, пока я использую gulp-html-replace, так как он работает с <!-- build:<name> --> .. <!-- endbuild: --> блоками. Я не могу заставить его читать HTML из файлов напрямую (пожалуйста, дайте мне знать, если я пропустил эту опцию), поэтому я просто передаю содержимое файла в виде строк:

gulp.src('default.html')
.replace({nameOfBlock-css: fs.readFileSync('minifiedCSSLinks.html', 'utf8')})
.replace({nameOfBlock-js: fs.readFileSync('minifiedJSLinks.html', 'utf8')})
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...