4

Svelte 是否支持复选框绑定?

我知道文档说明了以下内容,因此它可能尚未实施。

双向绑定尚未完全实现。请稍后再回来查看可用绑定的完整列表!

我想实现看起来像这样。

<input type="checkbox" bind:checked="checked">

但是,当我现在尝试这个时,它似乎不起作用。

更新

经过进一步调查,绑定似乎以某种方式工作,绑定值在组件数据中发生变化。但是,由于某种原因,更改并未反映在 DOM 中。它们可以通过简单地将数据设置为自身(component.set({checked: component.get('checked')}))来反映,强制更新 DOM,但它们不会像绑定那样自动反映。

更新 2

创建了一个 REPL来演示这个问题。

4

2 回答 2

2

在您的示例中,您需要绑定组件以及<input>元素:

<Component bind:checked="checked"></Component>

你可以看到它在这里工作。

于 2017-07-14T19:56:47.677 回答
0

这可以通过

<script>
     let checked = false;
</script>


<input type=checkbox bind:checked={checked}>

现在变量checked绑定到复选框的值。

你可以在这个简洁的小例子中试试这个

于 2019-04-25T10:37:49.883 回答