Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式)

Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式)

shallowRef函数

  • 功能:只给基本数据类型添加响应式。如果是对象,则不会支持响应式,层成也不会创建Proxy对象。
  • ref和shallowRef在基本数据类型上是没有区别的,shallowRef函数主要作用于不进行修改对象中的属性。

Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式)_第1张图片

<template>
    <h2>计数器1{{data.counter1}}</h2>
    <button @click="data.counter1++">计数器11</button>
</template>

<script setup>
    import { shallowRef } from 'vue'
    let data = shallowRef({
        counter1 : 1
    })
    console.log(data);
</script>

shallowReactive函数

  • 功能:shallowReactive 对象中只有第一层支持响应式,之后的都不支持响应式。

Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式)_第2张图片

<template>
    <h2>计数器1{{data.counter1}}</h2>
    <button @click="data.counter1++">计数器11</button>
    <hr>
    <h2>计数器2{{data.a.counter2}}</h2>
    <button @click="data.a.counter2++">计数器21</button>
</template>

<script setup>
    import { shallowReactive } from 'vue'
    let data = shallowReactive({
        counter1 : 1,
        a : {
            counter2 : 100
        }
    })
</script>
   counter2 : 100
        }
    })
</script>

你可能感兴趣的:(Vue,javascript,vue,前端框架,前端)