Har*_*rry 5 templates node.js express pug
我正在尝试让jade为我自动生成网址:
所以,如果我有这样的用户链接:
.userLink
a(href="/#{user}") #{user}
Run Code Online (Sandbox Code Playgroud)
我希望能够用(假设的语法)替换它:
.userLink
userLink(#{user})
Run Code Online (Sandbox Code Playgroud)
无论如何要做到这一点?
谢谢
编辑:好的我得到了它:
mixin userLink(user)
a(href="/" + user)= user
mixin userLink("Bob")
Run Code Online (Sandbox Code Playgroud)
似乎这样会起作用.
更新:
这是使用 jade mixin 的版本。可悲的是,我似乎无法在“a”标记的括号属性列表中找到“user”变量。
mixin userLink(user)
a(href="/" + user)= user
mixin userLink("Bob")
mixin userLink("Alice")
mixin userLink("Cooper")
Run Code Online (Sandbox Code Playgroud)
生成此 HTML
<a href="/undefined"></a> Bob
<a href="/undefined"></a> Alice
<a href="/undefined"></a> Cooper
Run Code Online (Sandbox Code Playgroud)
只需将辅助函数放入本地对象中并从模板中调用它即可
locals = {userLink: function(userName) { return "<a href=....."}}
jade.render('myview', {locals: locals})
Run Code Online (Sandbox Code Playgroud)
然后在你的玉模板中执行以下操作:
= userLink(user)
Run Code Online (Sandbox Code Playgroud)
您可能还想考虑注册一个dynamicHelper 函数。
| 归档时间: |
|
| 查看次数: |
2108 次 |
| 最近记录: |