vue.js - 在 Vue.js 中使用对象作为键的后果是什么?
问题描述
我是 vue.js 的新手
出于某种原因,我不得不使用如下代码:
<view v-for="item in list" :key="item">
<!-- do somethings -->
</view>
这似乎工作正常,但我不确定它是否会导致一些问题,我非常非常抱歉我没有在其他地方找到类似的讨论
我可以安全使用它吗?
谢谢!
解决方案
从关键文档:
期望:数字 | 字符串 | 布尔值(自 2.4.2 起) | 符号(自 2.5.12 起)
如果item
是一个 JavaScript 对象,那么您不应该将它用作键。如果找不到其他要使用的键,请使用v-for
索引:
<view v-for="(item, index) in list" :key="index">
<!-- do some things -->
</view>
如果item
对象具有独特的属性,例如id
,最好使用:
:key="item.id"
至于后果,您会在控制台中收到两条警告,一条说明检测到重复键。这很糟糕,因为它可能导致渲染更新错误。
推荐阅读
- tensorflow - 从 word2vec 开始的 Keras 实现
- pentaho - 运行时使用的 Kettle Change 连接
- powershell - 将比较对象的结果添加到数组
- objective-c - Sparkle checkForUpdatesInBackground 在网络服务器上没有请求
- java - App Goes Background When MainActivity Class Called
- javascript - How can i change JSON structure by group variable?
- java - Mapping one object to another with aggregation and grouping
- r - 用 assignInNamespace 覆盖包函数
- spring-boot - Pact testing using random port with jUnit5 and SpringBoot
- xcode - 我找不到我的对象文件夹,或者我没有快速命名它的名称?