Jade中的数据绑定没有客户端Javascript

时间:2012-05-15 05:18:50

标签: pug

我使用namevalue属性绑定字段。但它不舒服。

input(name='user[name]', value='#{user.name}')

我希望数据绑定类似于knockout.js但不在客户端(传统移动设备)中加载javascript。类似下面的代码:

 input(databind='username[value]')

1 个答案:

答案 0 :(得分:2)

knockout.js的很大一部分功能是“双向绑定”,检测DOM元素的变化和事件,并在模型中反映它们。如果不加载javascript,则无法使用此部分。

所以我假设你在生成发送给客户端的html时询问某种形式的单向绑定。

这让我想知道你寻求什么好处。它只是偏好不同的编码风格吗?

Knockout.js的数据绑定呈现为一组可扩展的“绑定”,每个绑定都针对特定目的而定制,以使特定范围的使用场景变得方便。例如,knockout的foreach或重复绑定可以方便地生成列表或表。对我而言,淘汰赛的最大优势在于能够轻松创建新的绑定以满足您的特定需求。

这里的价值是一些想法......没有特别的顺序。

  1. 您可以使用jade mixins和blocks来定义一些适合常见使用场景的简单可重用绑定。
  2. 查看适合您服务器端环境的其他模板库,看看是否有比玉更喜欢的东西。
  3. 具有扩展机制的模板库(EJS过滤器,Mustache lambdas,JSP自定义标签)将允许您为您的使用场景创建一些常用的绑定并重复使用它们。
  4. 可能最好的办法是更具体地说明你想要的好处。这可能会激发一些更好的回应。