如何正确渲染我的模板中显示为[Object Object]的元素?

时间:2017-03-16 10:29:12

标签: arrays meteor bootstrap-modal

如何在我的模板中正确显示rendar元素显示为[Object Object]?

我通过Modal.show()函数传递一些参数来调用作为主题模板的'date_time'categorySlideInMenu

但是在我调用Modal.show()函数之前,我打印出 cats 数组,如下:

Modal.show('categorySlideInMenu', {Name: cats});

以下是结果:

console.log ("Show: "+cats);

预期结果为:Show: [object Object],[object Object],[object Object]

这是因为cat数组值是通过Shoes: 1, Clothes: 1, Electronics: 1

添加的

结果将显示在我的" categorySlideInMenu "我运行cats.push({Item: item, checked: "1"})后的模板。

下面找到我的" categorySlideInMenu "中的代码。模板:

Modal.show('categorySlideInMenu', {Name: cats});

上面呈现三个复选框,每个复选框都带有 [object Object] 预期结果是三个复选框,每个复选框都有一个Item值,例如鞋子,衣服和电子产品。

为了让它正确呈现,我尝试了 <form id= "categoryForm"> {{#each Name}} <div class="checkbox-inline botomSpace"> <label><input type="checkbox" name="Category" value="{{this}}" >{{this}} </label> </div> {{#with cats}} <div class="checkbox-inline botomSpace"> <label><input type="checkbox" name="Category" value="{{this}}" checked> {{this}} </label> </div> {{/with}} {{/each}} </form> {{this.Item}}所有内容都没有渲染。

帮助!请指出我做错了什么。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

{{this.Item}}不起作用,因为你有一个对象数组,所以它没有定义。你需要的是this[0].Item,所以使用帮助器返回你正在寻找的猫对象。

如果item是一个对象,那么你需要渲染{{this.item.name}}例如(this是cat对象,而不是数组)。

console.log中,您可以console.log("show",cats)console.log("show",...cats)将数组展开到对象中。

更新

   {{#each Name}}

         <div class="checkbox-inline botomSpace">
            <label><input type="checkbox" name="Category" value="{{this.Item.name}}" >{{this.Item.name}} </label>
         </div>

         <div class="checkbox-inline botomSpace">
            <label><input type="checkbox" name="Category" value="{{this.checked}}" checked> {{this.checked}} </label>
         </div>
   {{/each}}