Javascript Meteor双向绑定-UI更新
我有一个页面,它基本上是一行行div元素。我从数组中创建这些div元素。数组中的每个对象都是一个具有密钥用户名的映射。下面是一个例子Javascript Meteor双向绑定-UI更新,javascript,jquery,node.js,meteor,2-way-object-databinding,Javascript,Jquery,Node.js,Meteor,2 Way Object Databinding,我有一个页面,它基本上是一行行div元素。我从数组中创建这些div元素。数组中的每个对象都是一个具有密钥用户名的映射。下面是一个例子 {{#each rows}} <div class="col-md-1 poolbox">{{this.username}}</div> {{/each}} 一旦它被推送到数据库中,我想将映射中username的值更新为一个新值,该值将有效地改变UI中的值。我尝试过这样做。username=“NEW VALUE”;在我
{{#each rows}}
<div class="col-md-1 poolbox">{{this.username}}</div>
{{/each}}
一旦它被推送到数据库中,我想将映射中username的值更新为一个新值,该值将有效地改变UI中的值。我尝试过这样做。username=“NEW VALUE”;在我把它推到DB之后,但那不起作用
最后,我想做pub/sub,这样它就可以一直从数据库中提取数据 您实际上可以更改该值,只需在行数组中添加一个助手,并检查用户名是否已更改 范例 js
Template.home.helpers({
rows : function(){
var rows = [{username :'abc'},{username :'abd'},{username :'ab'}];
_.each(rows,function(value,key) {
if(Box.find({old_username : value.username}).count() > 0){
rows[key].username = Box.find({old_username : value.username}).fetch()[0].username;
}
})
return rows;
}
})
Template.home.events({
'click .poolbox': function(e, t) {
var current_username = 'NEW VALUE';
Box.insert({
username: current_username,
old_username : $(e.currentTarget).text(),
createdAt: new Date()
});
}
})
在你的html中
{{#each rows}}
<div class="col-md-1 poolbox">{{username}}</div>
{{/each}}
{{#每行}
{{username}}
{{/每个}}
{{#each rows}}
<div class="col-md-1 poolbox">{{username}}</div>
{{/each}}