#5366·lit

`使用过失:真实'在财产被初始化为`无效'时不起作用

作者: justinfagnani创建于 2026年7月25日更新于 2026年7月25日
      • 哪些软件包受到影响?

立特核心(立特/立特-html/立特-要点/反应-要点)

说明

‘使用Default'的docs表示一个财产必须被初始化,但不要说初始值不能是无效的或未定义的,也不能:‘使用Default'使用'?'?'既记录又恢复了默认值,因此无法从"默认为‘null'/'未定义'中分辨出"没有记录的默认".

这在少数情况下会导致错误:

  • 元素构造时带有标准装饰器的`null'初始值。
  • foo:字符串QQ=未定义':删除属性将属性设置为null'而不是`未定义'。
  • “存取器 foo:字符串 QQ = 未定义 ” , 或“ 获取” : 默认在初始化时从未被记录(输入路径跳过“ 未定义” 值) , 因此, 用户集的第一个值被记录为“ 默认 ” 。 删除属性,则恢复该值而不是`未定义',即它似乎没有做任何事情。
  • 复制

无效违约案件:

类 MyEl 扩展 LitElement { @ property( { reflect: true, use Default: true} ) (请检查date=中的日期值) accessor foo:字符串 QQ 无效; {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

新建 MyEl( ); // TypeError: 此对象上没有私有元素 // at ReactiveElement. $change Property (reactive-element.ts:1339) (英语). /在init(装饰/财产.ts:157)


工作间

不使用无效默认?

这是倒退吗?

亦或无定. 这没用,或者我以前没试过

受影响的版本

3.3 国家

QQ 浏览器/ OS/ 节点环境

无