是否有可能将当前文件夹名称传递到nunjuck模板中?
类似:
此文件夹名称为{{currentFolderName}}
输出:
此文件夹名称为导航
从示例路径:blahblah / components / 导航
谢谢:)
source
可能是不明确的,例如如果使用include
标签。但是,您可以将source
定义为传递给render
功能的模板名称。因此,直接的方法是覆盖render
-环境的nunjucks
方法。
// app.js
var nunjucks = require('nunjucks');
var env = nunjucks.configure('views');
var _render = env.render;
env.render = function(name, context = {}, cb) {
context.__filename = context.__filename || name;
return _render.call(env, name, context, cb);
}
var html = env.render('test.html');
console.log(html);
// views/test.html
Source: {{ __filename }}
P.S。请注意,此代码可能会有副作用。