以下代码应在FooterButtons集合中插入3对文档,然后这些值在页脚模板中的3个按钮上显示为标签。
但是当调用“click .menuItem”时,它只在集合中插入“YES”。知道为什么它是经纪人和解决它的最佳方法吗?感谢
服务器和客户端代码
FooterButtons = new Mongo.Collection('footerButtons');
服务器代码
Meteor.publish('footerButtons', function(){
return FooterButtons.find();
});
客户端代码
Meteor.subscribe('footerButtons');
//---main_menu.js--------------------
Template.mainMenu.events({
'click .menuItem': function (event) {
FooterButtons.insert({button:"NO", button:"EXTRA", button:"YES"});
}
});
//---footer.html---------------
<template name="footer">
{{#each footerButtons}}
<h1>
<button class="col-xs-4" type="button">{{button}}</button>
</h1>
{{/each}}
</template>
//---footer.js---------------
Template.footer.helpers({
footerButtons: function(){
return FooterButtons.find();
}
});
答案 0 :(得分:0)
这个命令对于mongo插入是完全错误的
FooterButtons.insert({button:"NO", button:"EXTRA", button:"YES"});
如果您创建了一个javascript对象,
var obj = {button:"NO", button:"EXTRA", button:"YES"};
由于所有密钥都是重复的,因此您的对象只有一个具有最后一个密钥的密钥:是
您需要逐个插入
FooterButtons.insert({button:"NO"});
FooterButtons.insert({button:"EXTRA"});
FooterButtons.insert({button:"YES"});