node.js jade模板 – 自定义语法和replace?
我试图让玉为我自动生成url:
所以如果我有像这样的用户链接:
.userLink a(href="/#{user}") #{user}
我希望能够用(假设的语法)来代替它:
.userLink userLink(#{user})
无论如何要做到这一点?
谢谢
编辑:OKAY我明白了:
mixin userLink(user) a(href="/" + user)= user mixin userLink("Bob")
看起来像这样会工作。
更新:
这是一个使用翡翠mixins的版本。 可悲的是,我似乎无法在“a”标签的括号内的属性列表中find“用户”variables。
mixin userLink(user) a(href="/" + user)= user mixin userLink("Bob") mixin userLink("Alice") mixin userLink("Cooper")
生成这个HTML
<a href="/undefined"></a> Bob <a href="/undefined"></a> Alice <a href="/undefined"></a> Cooper
只需在你的locals对象中放一个辅助函数,然后从模板中调用它
locals = {userLink: function(userName) { return "<a href=....."}} jade.render('myview', {locals: locals})
然后在你的玉模板上做:
= userLink(user)
你可能也想看看注册一个dynamicHelper函数 。