#2633·Vue.js

关键属性的警告/类型

作者: skirtles-code创建于 2020年11月18日更新于 2026年8月12日
标签:sparkles: feature requestscope: types

翻译:

3.0.2 国家

复制链接

[https://jsfidult.net/skirtle/2czyf41n/] (https://jsfidult.net/skirtle/2czyf41n/).

  • 复制步骤

这个例子说明一些事情:

  1. 为 " 关键 " 属性作品使用对象(这是好的,但无记录)。
  2. 对相邻的多个兄弟姐妹使用同一种 " 钥匙 " (值 " 1 " )时没有显示警告。

-什么是预期?

快速地回顾Vue 2:

  1. 钥匙必须是原始的:字符串、数字、布尔或符号。 其他任何东西在渲染过程中立即引发了警告.
  2. 对兄弟姐妹使用同样的 " 钥匙 " 触发了关于重复钥匙的警告。

关于Vue 3的意见:

  1. 从代码来看,似乎用QQ对密钥进行了比较。 在一些边缘情况下,使用“地图”来比较它们。 无论哪种方式,现在都可以将对象用作密钥. 我认为这是伟大的。
  2. 从TS角度来看,只允许将密钥为字符串或数字.
  3. 有关于重复键的警告,但只在更新时才被击中,而且只在非常具体的情况下才被击中。

根据我对预期行为的最佳猜测,我建议作出以下修改:

  1. 对于重复的密钥,在渲染时应当发出警告. 重复表示开发者错误,即使不会造成真正的伤害.
  2. 应更新技术服务定义,使任何东西都能用作关键。
  3. 文件应更新。 能够将一个物体用作`钥匙'是一个伟大的新特点,如果它是故意的,那就值得大喊大叫。 我很高兴一旦我确认了官方支持的行为 就让医生们改变自己