HTML checkbox的value=是否必填?Svelte模板仅写值是否合法?
Svelte 模板语法规则
- Prettier的改写行为是对Svelte专属属性简写语法的自动优化,和原生HTML规范无关。
Svelte支持属性简写规则:当属性名和绑定的变量名完全一致时,可以省略属性名和等号,直接写{变量名}。你代码中的value={value}和改写后的{value}完全等价,渲染输出的原生HTML、运行时逻辑没有任何差异,不会影响表单提交、双向绑定的功能。
原生 checkbox 的 value 属性说明
原生HTML规范中,input[type=checkbox]的value属性本身是可选属性:
- 未显式设置时,默认值为字符串
on,表单提交时如果该复选框被选中,会提交[对应name属性值]=on的键值对 - 显式设置
value属性后,提交时会使用你设定的value值
不存在value为必填项的强制要求。
关闭自动简写的配置
如果你不希望Prettier自动执行该简化,可以在Prettier配置文件中添加参数svelteAllowShorthand: false,即可保留完整的value={value}写法。
内容的提问来源于stack exchange,提问作者Joe
相关产品推荐
相关产品推荐

