在Svelte中,您可以绑定复选框的checked
属性。然后,您可以observe
绑定组件上的值,其回调提供当前值和以前的值。
但是,当我尝试评估复选框状态的变化时,当前值和先前值看起来完全相同。 Please see this example to illustrate the problem。我在这里做错了吗?
答案 0 :(得分:2)
不,你没有做错事 - 这是观察者如何工作的怪癖,以及JavaScript中对象和数组的可变性。
观察者正在观察对象而不是searchField.focusRingType = .none
属性,并且对象本身并未实际更改。相反,您需要直接观察checked
。
使用内置item.checked
方法无法做到这一点,但您可以在svelte-extras - here's a demo中使用observe
进行此操作。