如何在 mixin 中按名称获取变量
形式(部分):
include ../mixins/form-helpers
form(action='/users/create', method='post')
div.fields
fieldset
mixin field('text', 'email', 'Email')
mixin field('password', 'password', 'Password')
mixin field('password', 'password_confirmation', 'Confirm password')
mixin field('username', 'username', 'Username')
mixin submit('Register')
字段混合看起来像这样:
mixin field(type, n, label)
.clearfix
label(for='#{n}') #{label}
.input
input#password.span8(name=n, type=type, value=user[name])
控制器:
(req, res)->
user =
email: 'someemail'
password: ''
password_confirmation: ''
username: 'someusername'
res.render 'users/new', user:user
我试图使字段混合更通用一些,以便我可以重用它。我正在寻找一种用“通用[名称]”替换“用户[名称]”的方法
Form (partial):
include ../mixins/form-helpers
form(action='/users/create', method='post')
div.fields
fieldset
mixin field('text', 'email', 'Email')
mixin field('password', 'password', 'Password')
mixin field('password', 'password_confirmation', 'Confirm password')
mixin field('username', 'username', 'Username')
mixin submit('Register')
Field mixin looks like this:
mixin field(type, n, label)
.clearfix
label(for='#{n}') #{label}
.input
input#password.span8(name=n, type=type, value=user[name])
Controller:
(req, res)->
user =
email: 'someemail'
password: ''
password_confirmation: ''
username: 'someusername'
res.render 'users/new', user:user
I am trying to make the field mixin a little more generic so I can reuse it. I am looking for a way to replace "user[name]" with "generic[name]"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用破折号(-)在jade模板中设置变量,
因此如果您使用generic[name],您可以在表单中执行以下操作:
You can set a variable inside a template in jade with a dash ( - )
So if you use generic[name] you can do the following in your form: