javascript - Vue 组件不会在 dom 更改时被破坏
问题描述
我有一个 vue 应用程序,可以重新排序和过滤组件列表。
<div id="my-app">
<div v-for="item in listItems">
<my-item v-bind:item="item"></my-item>
</div>
</div>
但是当我重新排序或过滤列表时,组件不会触发销毁事件,我需要向容器添加一个类并删除里面的图像 src。
解决方案
如果你没有key
在每个项目上设置 a ,那么 Vue 将重用现有的组件实例,只改变绑定的item
.
您应该设置key
一个唯一标识该特定项目的值。
<my-item :item="item" :key="item.id">
现在,当从列表中删除特定项目时,关联的<my-item>
组件将被销毁并且不会被重新使用。
推荐阅读
- c++ - 从结构化数组中读取信息
- python - 遍历 pandas DataFrame 中的列表
- gcloud - 将 gcloud 服务帐号限制为特定存储桶
- sql-server - Exec 语句中“=”附近的语法不正确
- javascript - 如何使用 Jest 和 React 测试函数
- entity-framework - 为什么我的子类中的一对多关系会出现循环错误?
- json - Reactjs fetch 方法返回空数组
- python - 为什么使用闭包将函数绑定到对象是错误的?
- azure-devops - 我们可以为带有 AzureDevOps 扩展的 iOS 应用程序配置 CI
- testing - 打印当前 DOM 元素