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

我用名称,值属性绑定字段.但它不舒服.

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

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

 input(databind='username[value]')

最佳答案 knockout.js的很大一部分功能是“双向绑定”,检测DOM元素的变化和事件,并在模型中反映它们.没有加载JavaScript,这部分是不可能的.

因此,我假设您在生成发送给客户端的html时询问某种形式的单向绑定.

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

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

对于它的价值,这里有一些想法……没有特别的顺序.

>您可以使用jade mixins和blocks来定义一些适合常见使用场景的简单可重用绑定.
>查看适合您的服务器端环境的其他模板库,看看是否有比jade更好的东西.
>具有扩展机制的模板库(EJS过滤器,Mustache lambdas,JSP自定义标签)将允许您为您的使用场景创建一些常用的绑定并重用它们.

可能最好的办法是更具体地说明你想要的好处.这可能会激发一些更好的回应.

点赞