具有多项选择的纸质菜单,如何取消全部选择

paper-menu with multiple selections, howto deselect all

我使用 paper-menu 进行多项选择 (multi)。目前一切正常,但取消选择所有方法后事情似乎更复杂。

与html

<paper-menu multi selected-values="{{selectedValues}}">...

飞镖

@property
List<String> selectedValues = [];...

事物被绑定,每个 iron-select/iron-deselect 事件都会导致 dart 中 selectedValues 列表的正确更新。

使用 clear('selectedValues') 列表清空并且逻辑表现得就像没有完成选择一样,但在 Dartium 中,之前的项目是 选中的仍标记为已选中。

我也尝试过 selectedItems List 或使用 select 方法取消选择 PaperMenu,但仍然没有成功更新 在 Dartium 中。

有人知道如何实现吗?

已找到 select 方法问题的解决方法。具有 selected 值的菜单可以替换为使用 Dom api 创建的新的类似元素。一个缺点是无法设置绑定,因此需要在元素上使用 getset 方法进行修改。否则这似乎工作正常。 Dom api 的调用如下所示。

ParticipantMenu oldPm = $$('#id_filterselection') as ParticipantMenu;
ParticipantMenu newPm = document.createElement('participant-menu');

Polymer.dom(parentNode).insertBefore(newPm, oldPm);
Polymer.dom(parentNode).removeChild(oldPm);
PolymerDom.flush();