具有多项选择的纸质菜单,如何取消全部选择
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 创建的新的类似元素。一个缺点是无法设置绑定,因此需要在元素上使用 get
和 set
方法进行修改。否则这似乎工作正常。 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();
我使用 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 创建的新的类似元素。一个缺点是无法设置绑定,因此需要在元素上使用 get
和 set
方法进行修改。否则这似乎工作正常。 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();