Как можно передать данные или переменную в gulp-pug?

  • 21 августа 2023 г. 17:26
Ответы на вопрос 2
Для передачи данных или переменных в gulp-pug вы можете использовать параметр "globals" в опциях gulp-pug. Этот параметр позволяет создать глобальные переменные, которые будут доступны во всех Pug шаблонах.

Вот пример использования параметра "globals":

```javascript
const gulp = require('gulp');
const pug = require('gulp-pug');

gulp.task('compilePug', () => {
  return gulp.src('src/*.pug')
    .pipe(pug({
      globals: {
        mode: 'development'
      }
    }))
    .pipe(gulp.dest('dist'));
});
```
В этом примере создается глобальная переменная "mode" со значением "development", которая будет доступна во всех Pug шаблонах. Вы можете передать любые данные вместо 'development', которые вам нужны.

Затем в Pug шаблоне вы можете обратиться к этой переменной таким образом:

```pug
doctype html
html
  head
    title Example
  body
    h1 #{mode}
```
Если вы запустите задачу gulp "compilePug", то в итоговом HTML файле будет отображена переменная "mode", соответствующая режиму компиляции.

Надеюсь, это поможет вам передать данные или переменные в gulp-pug!
export const compilePug = () => {
  return gulp.src(PATHS.pug)
    .pipe(pug({
      pretty: true,
      data: {
        env: process.env.NODE_ENV,
      },
    }))
    .pipe(gulp.dest(DEST_FOLDER));
}
Похожие вопросы