我真的很喜欢handlebars.js 模板,但我想挂接数据绑定以在数据更改时更新模板。我已经知道如何做这样的事情:
var users = ['hello','world','third'];
var source = '<form>{{#each users}}<input type="text" value="{{this}}">{{/each}}</form>';
var template = Handlebars.compile(source);
$('.form-cont').html(template({users: users}));
如果我想稍后添加另一个用户
users.push('last');
现在要更新模板,我更新 HTML
$('.form-cont').html(template({users: users}));
我只想更新已更改的内容,在上面的代码中,原始 html 被删除并替换为新模板。有没有办法只更新更改的内容?意思是在每个中添加一个项目而不清除原始输入。
我知道 Knockout.js、Angular.js 和 Ember.js 已将其内置到他们的框架中。我正在寻找一个更轻量级的解决方案,它只处理模板绑定,而不是整个框架。外面有什么吗?