Svelte 是否支持复选框绑定?
Does Svelte support checkbox binding?
Svelte 是否支持复选框绑定?
我知道文档说了以下内容,所以它可能还没有实现。
Two-way binding is not yet fully implemented. Check back soon for the full list of available bindings!
我想实现应该是这样的。
<input type="checkbox" bind:checked="checked">
然而,当我现在尝试这个时,它似乎不起作用。
更新
经过进一步调查,绑定似乎以某种方式起作用,组件数据中的绑定值发生了变化。但是,出于某种原因,更改未反映在 DOM 中。它们可以通过简单地将数据设置为自身 (component.set({checked: component.get('checked')})
),强制更新 DOM 来反映,但它们不会自动反映,因为它们应该通过绑定。
更新 2
我有 created a REPL 来演示这个问题。
在您的示例中,您需要绑定 组件 以及 <input>
元素:
<Component bind:checked="checked"></Component>
您可以看到它正在运行 here。
这可以通过
来完成
<script>
let checked = false;
</script>
<input type=checkbox bind:checked={checked}>
现在变量 checked
绑定到复选框的值。
试试这个
Svelte 是否支持复选框绑定?
我知道文档说了以下内容,所以它可能还没有实现。
Two-way binding is not yet fully implemented. Check back soon for the full list of available bindings!
我想实现应该是这样的。
<input type="checkbox" bind:checked="checked">
然而,当我现在尝试这个时,它似乎不起作用。
更新
经过进一步调查,绑定似乎以某种方式起作用,组件数据中的绑定值发生了变化。但是,出于某种原因,更改未反映在 DOM 中。它们可以通过简单地将数据设置为自身 (component.set({checked: component.get('checked')})
),强制更新 DOM 来反映,但它们不会自动反映,因为它们应该通过绑定。
更新 2
我有 created a REPL 来演示这个问题。
在您的示例中,您需要绑定 组件 以及 <input>
元素:
<Component bind:checked="checked"></Component>
您可以看到它正在运行 here。
这可以通过
来完成<script>
let checked = false;
</script>
<input type=checkbox bind:checked={checked}>
现在变量 checked
绑定到复选框的值。