gpt4 book ai didi

dart - 在聚合物1.0.rc中重置和更新列表属性

转载 作者:行者123 更新时间:2023-12-03 03:43:52 25 4
gpt4 key购买 nike

我有一个 map 项列表属性。

@property 
List<Map<String, dynamic>> items = [
{'name': 'Acrid', 'checked': false},
{'name': 'Fishy', 'checked': false}
];

当if条件评估为true时显示的内容。
<template
restamp
is = "dom-if"
if = "[[normalChangedRestampedToggler]]">
<div
class = "layout horizontal wrap body auto"
id = "container">

<paper-material
pad-bottom
class = "dropdown-content layout vertical"
elevation = "5">

<paper-input
value = "{{filterValue}}"
label = "Search"
class = "margin">
<iron-icon
suffix
icon = "search"></iron-icon>
</paper-input>

<paper-menu multi
on-click = "onClickHandler">
<template
id = "repeat"
is = "dom-repeat"
items = "{{items}}"
filter = "{{filter(filterValue)}}">
<paper-item
role = "menuitemcheckbox"
toggles = "true"
active = "{{item.checked}}">
<paper-checkbox
checked = "[[item.checked]]"
checked-changed = "checkedChanged"></paper-checkbox>
[[label(item)]]
</paper-item>
</template>
</paper-menu>

</paper-material>
</div>
</template>

有条件的if是通过切换按钮设置的:
  @reflectable
void toggleNormalChangedEvent( event, [_] ) {
normalChangedRestampedToggler = !normalChangedRestampedToggler;
set('normalChangedRestampedToggler', normalChangedRestampedToggler);

switch ( normalChangedRestampedToggler ) {
case false:
for(var item in data)
{
item['checked'] = false;
}
set('items', data);
data = new List<Map<String, dynamic>>( );
break;
}
}

当用户界面按预期切换时,
set('items', data);

似乎没有重置项目-复选框的旧选中状态仍然保留。看来items属性不会更新。

可以通过某种方式强制执行此更新吗?

PS问题可能是由于复选框位于嵌套模板中造成的吗?如果是这样,有没有办法解决这个问题?

谢谢

最佳答案

这是多余的

normalChangedRestampedToggler = !normalChangedRestampedToggler;

因为这包括以上内容(添加了 !)
set('normalChangedRestampedToggler',! normalChangedRestampedToggler);
for(var item in data) {
item['checked'] = false;
}

应该
for(int i = 0; i < items.length; i++) {
set('items.$i.checked', false);
}
data = new List<Map<String, dynamic>>( );

不会执行任何操作,因为您可能再次分配了相同的列表,并且Polymer意识到没有任何更改。
template is="dom-repeat也使用
items = "{{items}}"

为什么设置 data

关于dart - 在聚合物1.0.rc中重置和更新列表属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34583623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com