vue3里的ref和shallowRef在同一个组件里面出现,ref的更新会影响到showllowRef,,如下代码
<script setup>
import { ref, shallowRef, triggerRef } from 'vue'
const count = ref(0)
const obj = shallowRef({
count:1
})
function addClickHandle(){
count.value++
}
function addShallowClickHandle(){
obj.value.count++
// triggerRef(obj)
}
</script>
<template>
<div>
{{ count }}
</div>
<button @click="addClickHandle">add count</button>
<hr>
<div>
{{ obj.count }}
</div>
<button @click="addShallowClickHandle">add count</button>
</template>
先点击addClickHandle事件,只会更新count这是正常的,
但是先点击addShallowClickHandle,视图不更新,再点击addClickHandle,导致obj.count更新了
如果要不互补影响,该怎么操作,难道二者就不能存在同一个sfc中了吗,框架这样设计是不是不合理了