不是响应式的数据改变导致了页面的改变
来源:6-3 ref,reactive 响应式引用的用法和原理 (2)

sony的小鼠
2021-03-24
老师,我在用vue3做毕业设计的时候遇到了一件比较奇怪的事情
模板部分
<div v-for="companion in travelCompanions" >
<div v-for="similiarAttraction in companion.similiarAttractions"
:key="similiarAttraction"
>
{{similiarAttraction}}
</div>
<img ... @click="()=>showEmailPopup(companion)"/>
</div>
setup函数中处理函数
const showEmailPopup = (companion) => {
if(companion){
console.log('我是不是响应式数据呢',companion)//打印出来的就是普通对象
companion.similiarAttractions = ['kk']
}
当我修改了这个非响应式数据的时候,我发现页面也随之改变了,这是为什么呢
写回答
1回答
-
sony的小鼠
提问者
2021-03-24
老师,我后来做了一下实验,发现是因为我点击之后,有一个响应式的数据发送了变化,导致页面发生了变化,是不是页面发送了变化,哪怕你这个数据不是响应式的,也会随之改变
062023-03-28
相似问题