Vue3 中 ref 的优势

1. 允许使用任何值类型

2. 一个包含对象类型值的 ref 可以响应式地替换整个对象:

const objectRef = ref({ count: 0 })

// 这是响应式的替换
objectRef.value = { count: 1 }

3. ref 被传递给函数或是从一般对象上被解构时,不会丢失响应性:

const obj = {
  foo: ref(1),
  bar: ref(2)
}

// 该函数接收一个 ref
// 需要通过 .value 取值
// 但它会保持响应性
callSomeFunction(obj.foo)

// 仍然是响应式的
const { foo, bar } = obj

4. ref 在响应式对象中的解包(数组和集合类型除外)

const count = ref(0)
const state = reactive({
  count
})

console.log(state.count) // 0

state.count = 1
console.log(count.value) // 1 

 

 
posted @ 2023-06-02 14:43  小短腿奔跑吧  阅读(57)  评论(0编辑  收藏  举报