我正在尝试在使用 Nunjucks 的 Ubuntu 上运行一个项目,该gulp-nunjucks-render
插件用于呈现 Nunjucks 模板。
开发人员主要在 Windows 和 Mac OS 上使用此项目,因此在不区分大小写的情况下包含文件时没有问题,但这会在 Ubuntu 上引起问题,因为当某些文件的大小写不同时,该插件似乎无法包含某些文件以他们的名义。
例如,我有这个文件:m-figures.njk
,但是在我们有的代码中:{% import '../m-Figures.njk' as figures %}
,在这种情况下,我得到了这个错误:
Plumber found unhandled error:
Template render error in plugin "gulp-nunjucks"
Message:
(unknown path)
Error: template not found: ../m-Figures.njk
对于我的 gulp 任务,它是这样的:
gulp.task("nunjucks", () => {
return gulp
.src([src_folder + "pages/**/*.njk"])
.pipe(plumber())
.pipe(
data(() =>
JSON.parse(fs.readFileSync(src_folder + "datas/dist/data.json"))
)
)
.pipe(nunjucks())
.pipe(beautify.html({ indent_size: 2 }))
.pipe(gulp.dest(dist_folder))
.pipe(browserSync.stream({match: '**/*.html'}));
});
有没有可以添加到我的 gulp 任务中来解决这个问题的解决方案?
编辑
实际上,这是 gulp 的全球性问题,因为gulp-sass
在区分大小写的文件系统上也失败了