我有一个简单的应用程序看起来像这样:PolymerJS:通过项目的阵列功能 - 遗漏的类型错误:转换圆形结构成JSON
的应用程序有一个完成所有按钮这应该做标签说它应该和它的工作。但之后,我按下按钮,我在我的控制台中看到以下错误消息:
Uncaught Typeerror: Converting circular structure into JSON
这是什么,完成所有任务的函数看起来像:
setItemsCompleted: function(completed) {
for (var i = 0; i < this.items.length; ++i) {
this.set(['items', i, 'completed'], completed);
}
}
这似乎接受一系列物品。我想通过它的项目的数组,但是这是我的功能得到由触发完成所有按钮:
completeAll: function(e) {
console.log(this.items);
this.model.setItemsCompleted(this.items);
},
这里是我的完成所有按钮的代码在我的TD- todos.html:
<template is="dom-if" if="{{!allCompleted}}">
<paper-button
raised
tabindex="1"
class="colorful"
id="complete-all"
on-tap="completeAll">
Complete All
</paper-button>
</template>
我的问题是,我怎么通过它的项目,而不是与项目对象的数组?
或者,也许接受功能是错误的,因为它最初接受复选框触发的事件,看起来是这样的:
toggleAllCompletedAction: function(e) {
this.model.setItemsCompleted(e.target.checked);
},
上面的代码取直出聚合物图书馆TodoMVC例子并稍加修改。所以问题可以简化为,我该如何使用按钮而不是复选框?