我想为一些html元素动态创建属性.
在我的情况下,我想根据设置(或不设置)禁用的属性user.role.
因此,如果user有权编辑某些字段,我不想在元素上放置禁用属性.否则,我确实想要它.
我知道我可以用这些方法做到这一点:
if (user.role === 1)
input(type='text', name='foo')
else
input(type='text', name='foo', disabled)
Run Code Online (Sandbox Code Playgroud)
- var disabledAttr = (user.role === 1) ? "disabled" : "";
| <input type="text" name="foo" #{ disabledAttr} />
Run Code Online (Sandbox Code Playgroud)
方法1很糟糕,因为我需要重复一些代码.使用方法2我不需要重复代码,但我必须使用纯HTML而不是Jade标记.
我试过这样的事情:
input(type='text', name='foo', #{ disabledAttr} )
Run Code Online (Sandbox Code Playgroud)
但是jade会生成以下代码:
<input type="text" name="foo" disabledattr="" />
Run Code Online (Sandbox Code Playgroud)
有什么好主意吗?
是否可以使用node.js重写URL路径?(我也使用Express 3.0)
我尝试过这样的事情:
req.url = 'foo';
Run Code Online (Sandbox Code Playgroud)
但网址继续相同