rap*_*sli 2 javascript nunjucks
所以我在这里添加了简单的脚本标记这个脚本.
var env = new nunjucks.Environment();
// async filters must be known at compile-time
env.addFilter('asyncFilter', function(val, cb) {
// do something
return "test"
}, true);
Run Code Online (Sandbox Code Playgroud)
在我的模板中,我有
{{ item.opendays | asyncFilter }}
Run Code Online (Sandbox Code Playgroud)
我在Chrome控制台中遇到的错误:
Uncaught Template render error: (node/yummy/www/js/templates/restaurant.overview.html)
Error: filter not found: asyncFilter
Run Code Online (Sandbox Code Playgroud)
可能是非常简单的事情,但我无法让它发挥作用.
这是我用于渲染的代码:
items = nunjucks.render(Config.rootPath + 'js/templates/restaurant.overview.html', {items: data});
Run Code Online (Sandbox Code Playgroud)
Nic*_*rdu 13
如果您使用configure,那将返回您应添加过滤器的环境:
var env = nunjucks.configure('views');
// async filters must be known at compile-time
env.addFilter('asyncFilter', function(val, cb) {
// do something
return "test"
}, true);
Run Code Online (Sandbox Code Playgroud)
然后你可以继续使用nunjucks.render().
您没有使用刚刚创建和设置的环境。
items = env.render(Config.rootPath + 'js/templates/restaurant.overview.html', {
items: data
});
Run Code Online (Sandbox Code Playgroud)
也就是说,env.render()而不是nunjucks.render().
| 归档时间: |
|
| 查看次数: |
4724 次 |
| 最近记录: |