2014-03-04 55 views
0

在我的流星应用程序中,我需要根据点击的项目更改数组的值。 这是我如何从数据库获取项目。如何为流星中的点击事件赋值给变量

Template.templatename.vname = function(){ 
    return Db.find(); 

} 

单击按钮时,我需要更改阵列vname中的项目。

我可以这样做

'click #item1' : function() 
{ 
    Template.templatename.vname = function(){ 
    return Db.find({id : this._id}); 
    }  
} 

回答

0

你可以使用一个变量Session

Template.templatename.vname = function(){ 
    var searchId = Session.get("searchId"); 
    if(searchId) { 
     return Db.find(); 
    } 
    else { 
     return Db.find({_id: searchId}); 
    } 
} 

然后

'click #item1' : function() 
{ 
    Session.set("searchId", this._id); 
}  

有两点要注意

  • 搜索帮助程序返回一个数组,但您正在提取一个项目(_id是唯一的)
  • 您需要清除会话变量为null以再次显示所有结果。