我想让Jade自动为我生成URL:
如果我有像这样的用户链接:
.userLink
a(href="/#{user}") #{user}
我希望能够用类似以下的语法(假设)替换它:
.userLink
userLink(#{user})
有什么办法可以做到这一点吗?
谢谢。
编辑:好的,我明白了。
mixin userLink(user)
a(href="/" + user)= user
mixin userLink("Bob")
看起来那应该可行。
我想让Jade自动为我生成URL:
如果我有像这样的用户链接:
.userLink
a(href="/#{user}") #{user}
.userLink
userLink(#{user})
mixin userLink(user)
a(href="/" + user)= user
mixin userLink("Bob")
更新:
这里有一个使用Jade Mixins的版本。不幸的是,在“a”标签的括号属性列表中似乎找不到“user”变量。
mixin userLink(user)
a(href="/" + user)= user
mixin userLink("Bob")
mixin userLink("Alice")
mixin userLink("Cooper")
<a href="/undefined"></a> Bob
<a href="/undefined"></a> Alice
<a href="/undefined"></a> Cooper
locals = {userLink: function(userName) { return "<a href=....."}}
jade.render('myview', {locals: locals})
然后在你的jade模板中这样做:
= userLink(user)
你可能还想考虑注册一个dynamicHelper函数。