在Svelte 3中如何具有条件属性?

巴蒂斯特奥

有没有更简单的方法来编写以下复选框组件:

<script>
  export let disabled = false;
</script>

{#if disabled}
  <label class="checkbox" disabled>
    <input type="checkbox" {disabled} />
    <slot></slot>
  </label>
{:else}
  <label class="checkbox">
    <input type="checkbox" {disabled} />
    <slot></slot>
  </label>
{/if}

<label disabled="false">因为布尔玛有一个CSS类,所以拥有是不可接受的.checkbox[disabled]

rixo

disabled || undefined 似乎可以解决问题:

<label class="checkbox" disabled={disabled || undefined}>
  <input type="checkbox" {disabled} />
  <slot></slot>
</label>

编辑:维护者已经确认,将属性完全从元素中删除是正确的支持方法。undefinednull应该工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章