繁体   English   中英

手动选择铁清单项目时出错

[英]Error when selecting iron-list item manually

  • 聚合物1.4.0
  • 铁清单1.3.1

单击某个元素时,我正在手动触发对项目的选择。 只要我在铁清单中具有selection-enabled multi-selection属性,此方法就可以正常工作。 但是,我想删除它们,因为关联的事件处理程序(点击选择)会干扰我的事件处理程序。 当我得到polymer.html:3942 Uncaught TypeError: userArray.slice is not a function

某些记录显示_itemsChanged正在执行Polymer.Collection.get(this.items) ,该操作期望所有项目的数组位于链的更下游,但仅将所选项目作为对象。 因此,我已经找到了问题,但我不知道为什么会发生或如何解决。

看起来像selection-enabled的代码只是添加处理程序。 那是一个错误的假设吗? 总是需要选择吗? 我的功能可能有问题吗?

这是我的选择功能,改编自_selectItem在功能上这个帖子的 jsbin:

toggleSelect: function(e) {
  this.$.itemsList.toggleSelectionForItem(e.model.item);
},

对于这个问题,我深表歉意。 稍后,我将尝试提供小提琴。

尝试更改selectedItem属性,而不是调用方法toggleSelectionForItem。 从此方法的描述来看,它似乎与多选择属性更相关。

原始帖子中的代码是正确的,解决方案是使用multi-selection但不selection-enabled

说明

由于toggleSelectionForItem似乎取决于multi-selection并且selection-enabledselection-enabled会触发不需要的选择,因此我们可以简单地删除selection-enabledselection-enabled以获得所需的行为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM