【6月日新计划更文活动】第23天
其他Composition API
1、shallowReactive 与 shallowRef
-
shallowReactive:只处理对象最外层的响应式(浅响应式) -
shallowRef:只处理基本数据类型的响应式,不进行对象的响应式处理 -
什么时候使用:
- 如果有一个对象数据,结构比较深,但变化时只是外层属性变化 ===>
shallowReactive - 如果有一个对象数据,后续功能不会修改该对象中的属性,而是生成新的对象来替换 ===>
shallowRef
- 如果有一个对象数据,结构比较深,但变化时只是外层属性变化 ===>
2、 readonly与 shallowReadonly
readonly:让一个响应式数据变为只读的(深只读)shallowReadonly:让一个响应式数据变为只读的(浅只读)- 应用场景:不希望数据被修改时
3、toRaw 与 markRaw
-
toRaw:
- 作用:将一个由
reactive生成的响应式对象转为普通对象 - 使用场景:用于读取响应式对象对应的普通对象,对这个普通对象的所有操作,不会引起页面更新
- 作用:将一个由
-
markRaw:
-
作用:标记一个对象,使其永远不会称为响应式对象
-
应用场景:
- 有些值不应该被设置为响应式的,例如复杂的第三方类库等
- 当渲染具有不可改变数据源的大列表时,跳过响应式转换可以提高性能
-