
interface item { config1 : any config2 : any config3 : any config4 : any config5 : any config6 : any config7 : any } const obj = reactive<item[]>([]) 有这样的一个对象,我 v-for 用数组下标做 key 值,有一个拖拽操作,会交换这两项在数组中的位置,但是视图并没有刷新,数据是更新了的,是 key 的问题吗,是的话,怎么解决? item 里没有值适合做 key
示例代码 大致逻辑是这样
1 vace 2024-10-17 00:25:57 +08:00 不会,没 key 不写就行了,只影响 diff 效率。可以 去 https://play.vuejs.org 贴最小可执行代码。 |
2 klongfei 2024-10-17 08:26:48 +08:00 可以自己生成一个唯一 id |
4 hoooo 2024-10-17 09:08:48 +08:00 via Android 确实是 key 的问题,没有合适的值做 key 的话你就 json.stringify 一下 item ,你就会得到一个巨大的 key |
5 callv 2024-10-17 10:31:21 +08:00 map 一下数组,把下标放到 item 里面当 key ? |