Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Meteor双向绑定-UI更新_Javascript_Jquery_Node.js_Meteor_2 Way Object Databinding - Fatal编程技术网

Javascript Meteor双向绑定-UI更新

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”;在我

我有一个页面,它基本上是一行行div元素。我从数组中创建这些div元素。数组中的每个对象都是一个具有密钥用户名的映射。下面是一个例子

{{#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}}