0

嗨,我使用 gulp 将我的 .ejs 文件自动编译为 html 文件,但是当 gulp-ejs 编译文件时,它会作为 ejs 输出。我需要在 ejs() 对象中定义 .html 扩展名,但我可以让它工作。

这是我到目前为止得到的:

gulp.task('ejs', function(){
    return gulp.src('src/templates/**/*.ejs')
    .pipe(ejs())
    .pipe(gulp.dest('builds/dev/'))
});

我也试过这个:

gulp.task('ejs', function(){
    return gulp.src('src/templates/**/*.ejs')
    .pipe(ejs({setting: '.html'}))
    .pipe(gulp.dest('builds/dev/'))
});

溴甲烷

4

2 回答 2

5

您需要在设置对象中提供该ext选项,如下所示:

gulp.task('ejs', function(){
  return gulp.src('src/templates/**/*.ejs')
   .pipe(ejs({}, {ext:'.html'}))
   .pipe(gulp.dest('builds/dev/'))
});
于 2016-04-18T10:52:29.330 回答
0

你只需要使用 (gulp-rename) 插件来获得大于版本 4

const ejs = require('gulp-ejs')
const rename = require('gulp-rename')
 
gulp.src('./templates/*.ejs')
  .pipe(ejs({ title: 'gulp-ejs' }))
  .pipe(rename({ extname: '.html' }))
  .pipe(gulp.dest('./dist'))
于 2021-10-25T11:16:27.810 回答