vue 保存后 组件的数据不更新,解决方案 ★ ★ ★ ★ ★

解决方案:通过  v-model:projectList="projectList"  绑定在组件上,

子组件内通过  defineProps  接收数据,在watch里监听到数据变化的时候再赋值给新的对象 newProjectList ,子组件内使用该组件

父组件:

  <projectBoard v-model:projectList="projectList" ref="projectBoardComponent" @showEdit="showEdit"
              @showAdd="showAdd" @logEdit="logEdits" @editProject="editProject" @reload="reload" />

 子组件:使用 newProjectList进行操作

<div class="board flex-col" v-for="(project, index) in newProjectList" :key="index">
<h3 class="board-group-h3 flex-1">{{ project.name }}</h3>
</div>
const props = defineProps(['projectList'])
const newProjectList=ref([])
watch(() => props.projectList, () => {
  newProjectList.value = props.projectList
})

 

posted @ 2024-06-21 08:21  Shimily  阅读(11)  评论(0)    收藏  举报