【发布时间】:2016-03-07 19:56:03
【问题描述】:
我有以下聚合物元素:
<acre-faq id="faq"></acre-faq>
有以下数据:
var seedElement = document.querySelector('#faq');
seedElement.questions = [{votes: number, question: string,
answers: [{answer: string, author: string, date: string}]}]
当用户点击投票事件时,我想更改点击项目的数据:
seedElement.addEventListener("acre-faq-up",function(e){
e.detail.item.votes = e.detail.item.votes+1;
});
但是 DOM 没有更新,有没有办法做到这一点而不使用另一个聚合物元素来操作数据?
【问题讨论】:
-
不应该像这样使用点击事件吗:
seedElement.addEventListener("click",function(e){...}? -
问题不在于事件,
acre-faq-upevent 工作并返回属性数据,当我更新投票时问题就在那里e.detail.item.votes = e.detail.item.votes+1;dom 没有更新 -
请发布
detail.item元素 -
是聚合物元素的模板,可以在任何地方使用,因为有两种可能的解决方案,但它们取决于属性在模板中的绑定方式?
-
创建元素的代码在这里:pastebin.com/g27DiWuE
标签: javascript polymer