多路径数组在 Nunjucks 中不适用于模板和部分
Array of multiple path is not working in Nunjucks for templates and partials
我正在使用这个 gulp 插件来使用 nunjucks 来简化 HTML 管理。
https://github.com/carlosl/gulp-nunjucks-render
gulp.task('default', function () {
return gulp.src('src/templates/*.html')
.pipe(nunjucksRender({
path: ['src/templates/'] // String or Array
}))
.pipe(gulp.dest('dist'));
});
我想将我的模板和部分文件保存在不同的文件夹中,所以我尝试将其保留为路径
path: ['src/templates', 'src/partials']
但它不起作用。
Template render error: (unknown path)
Error: template not found: partials/side_nav.nunjucks
我的设置
据我所知,问题出在您的 include
上。您已经将基本路径定义为 'src/templates'
和 'src/partials'
。现在 nunchucks 正在尝试导入 src/templates/partials/side_nav.nunjucks
和之后的 src/partials/partials/side_nav.nunjucks
,它们不存在。
解决方案 1
所以你必须在没有 partials
部分的情况下包含它:
{% include "side_nav.nunjucks" %}
解决方案 2
如果您想明确说明您的文件夹(模板和部分文件夹),您可以将基本路径设置为 src
,并像您一样包含您的文件:
{% extends "templates/layout_with_sidenav.nunjucks" %}
...
{% include "partials/side_nav.nunjucks" %}
我正在使用这个 gulp 插件来使用 nunjucks 来简化 HTML 管理。
https://github.com/carlosl/gulp-nunjucks-render
gulp.task('default', function () {
return gulp.src('src/templates/*.html')
.pipe(nunjucksRender({
path: ['src/templates/'] // String or Array
}))
.pipe(gulp.dest('dist'));
});
我想将我的模板和部分文件保存在不同的文件夹中,所以我尝试将其保留为路径
path: ['src/templates', 'src/partials']
但它不起作用。
Template render error: (unknown path)
Error: template not found: partials/side_nav.nunjucks
我的设置
据我所知,问题出在您的 include
上。您已经将基本路径定义为 'src/templates'
和 'src/partials'
。现在 nunchucks 正在尝试导入 src/templates/partials/side_nav.nunjucks
和之后的 src/partials/partials/side_nav.nunjucks
,它们不存在。
解决方案 1
所以你必须在没有 partials
部分的情况下包含它:
{% include "side_nav.nunjucks" %}
解决方案 2
如果您想明确说明您的文件夹(模板和部分文件夹),您可以将基本路径设置为 src
,并像您一样包含您的文件:
{% extends "templates/layout_with_sidenav.nunjucks" %}
...
{% include "partials/side_nav.nunjucks" %}