我试图在复选框列表中使用去抖动绑定行为,但它似乎没有像我期望的那样工作(我不确定你是否甚至可以去抖动复选框):
<label repeat.for="v of values">
<input type="checkbox" value.bind="v" checked.bind="checkedVal & debounce:1000"> Checkbox value "${v}"
</label>
点击任意一个复选框会导致checkedVal
数组立即更新,而它正如我期望的那样正常输入:
<input type="text" value.bind="textVal & debounce:1000"/>
我可以去掉复选框输入吗?
这里是完整代码,GistRun here。
app.html
:
<template>
<h1>Checkbox bind debounce</h1>
<form>
<label for="text">text input with debounce:1000 </label>
<input type="text" value.bind="textVal & debounce:1000"/>
<div repeat.for="v of values">
<br/>
<label>
<input type="checkbox" value.bind="v" checked.bind="checkedVal & debounce:1000"> Checkbox value "${v}"
</label>
</div>
</form>
<br/>
<p>Text value: ${textVal}</p>
<p>Checked values:</p>
<p repeat.for="v of checkedVal">${v}</p>
</template>
app.js
:
export class App {
values = [1, 2, 3];
checkedVal = [];
}
谢谢!
答案 0 :(得分:4)
此时,它不受支持。去抖动绑定行为控制checkedVal
属性的分配速率。在已检查的绑定中,属性未被分配,属性is mutated with push and splice引用的数组实例绕过绑定表达式中的去抖动。