我有一个使用模板管理器(Nunjucks(处理HTML和PHP文件的gulpfile,它工作正常,但我认为该过程可以改进。
目前,我正在使用一个任务来处理HTML文件,另一个任务来处理PHP文件。任务和模板完全相同,除了不同的gulp.src globs仅针对HTML或仅针对PHP文件以及PHP任务中的附加.pipe(rename({extname: '.php'}))
,因为Nunjucks将所有文件输出为.html
无论输入扩展名是什么,老实说,我不明白为什么这是必要的。
将我的任务减少到只有一个的简单解决方案是告诉 Nunjucks 不要更改源文件的文件扩展名,但我在他们的文档中没有找到配置标志。
我最初的想法是使用内置的节点路径模块在 Nunjucks 进程之前检查扩展是什么,如果它.php
,则将标志设置为 true。然后,在双节棍过程之后,使用 gulp-if 检查标志,如果为 true,则重命名回.php
。
由于我是 Gulp 的新手,经过广泛的搜索,没有找到任何帮助来让我入门,我希望社区可以帮助我找到解决方案和我的 Gulp 学习曲线。
我看起来不够努力。现在我可以使用一个任务处理 HTML 和 PHP。有一个选项可以忽略默认的.html
扩展。
对于其他任何人:
.pipe(nunjucksRender({
path: ['src/views'],
inheritExtension: true
}))