Meteor JS渲染和DOM更新

时间:2014-11-28 17:55:05

标签: javascript meteor

我是MeteorJS的新手,我似乎无法绕过它。或者在Jquery中思考。

但无论如何。

我有一个游戏集,其中列出了一堆游戏,很好。

在游戏集合中,我有一个包含10个单元格的数组

  cells = [0,0,0,0,0,0,0,0,0,0,0];

我在模板中渲染单元格

  <template name='cells'>
    {{#each cells}}
       <span class='cell'>{{this}}</span> -
    {{/each}}
  </template>

按预期呈现

   0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0

然而.... 我现在希望能够让用户单击单元格并将值更改为2。

我知道如何使用模板助手和一些jQuery进行类更新。

但是如何让它实际反映在服务器/另一页上?

我有这个......

  Template.cell.events({
    'click .cell':function(evt, template){
         //Update the cell in the game collection.
         //  So [0,0,0,0,2,0,0,0,0,0] for example.
        $(evt.currentTarget).addClass('newUpdate').html(2);

    };
  });

但我希望这是活的。因此,当一个人更改它时,类会被应用,并且除了我处理的那个页面之外的所有页面上都会更新html和颜色。

就像我如何直接更改模型,并让dom自动应用适当的类而不是所有客户端?

1 个答案:

答案 0 :(得分:0)

您应该根据点击事件更新您的收藏集。 喜欢这个

MyCollection.update({_id:idOfYourcollection}:{$set:{nameOfFieldtochance: newvalue}})

魔术,你的应用程序现已上线。