Polymer 如何将{{items | sum}}绑定到模板重复之外?
但是聚合物崩溃时没有错误信息。当我把它放在Polymer 如何将{{items | sum}}绑定到模板重复之外?,polymer,Polymer,但是聚合物崩溃时没有错误信息。当我把它放在ready:function(){…}中时,我只看到一个空白屏幕,我想说它现在不可行。或者是疯狂的黑客 让我提出解决办法: 我已经创造了简单的聚合物和使用的权力 {{item.q} 总数为{Total} 聚合物({ 项目:[], 已创建:函数(){ this.items=[{q:1},{q:2}]; }, 计算:{//注意:计算集 总计:'项目|总和' }, 求和:函数(项){//注:定义的“管道”函数 var合计=0; 项目.forEach(功能(i
ready:function(){…}
中时,我只看到一个空白屏幕,我想说它现在不可行。或者是疯狂的黑客
让我提出解决办法:
我已经创造了简单的聚合物和使用的权力
{{item.q}
总数为{Total}
聚合物({
项目:[],
已创建:函数(){
this.items=[{q:1},{q:2}];
},
计算:{//注意:计算集
总计:'项目|总和'
},
求和:函数(项){//注:定义的“管道”函数
var合计=0;
项目.forEach(功能(i){
总数+=智商;
});
返回总数;
}
});
希望有帮助 这几乎是可行的:D意味着它正确地计算了
总数
,但只在启动时计算一次。当q
值仅在repeat=“{{items as item}}}}”模板内更改q
值时,将更新total
保持不变:)您可以在代码中添加items[]吗。as
仅用作重命名变量的别名。如果您将所有后续的{{{item.}}
替换为{{}
,您就可以明白我的意思了,它应该可以工作。
<div id="order">
<template repeat="{{items as item}}">
<p data-id="{{item.id}}" data-qty="{{item.qty}}" data-price="{{item.price}}">
<span>- {{item.id}}</span>
<span> x{{item.qty}}</span>
</p>
</template>
<p>- Total {{total}}€</p>
</div>
var order = this.$.order
order.onMutation(order, this.sum)
<polymer-element name="x-repeat">
<template>
<template repeat="{{items as item}}">
<div>{{item.q}}</div>
</template>
<div>Total is {{total}}</div>
</template>
<script>
Polymer({
items : [],
created : function () {
this.items = [{q:1}, {q:2}];
},
computed: { // NOTE: computed set
total: 'items | sum'
},
sum : function (items) { // NOTE : defined 'pipeline' function
var total = 0;
items.forEach(function (i) {
total += i.q;
});
return total;
}
});
</script>
</polymer-element>