关于ref和reactive写法上的疑惑

来源:3-19 Suspense - 异步请求好帮手第一部分

Boy越越

2020-09-25

老师我想问下,如果我一个组件中包含弹框组件,那么问题来了
1、ref(val)的方式声明变量从上往下写很多,会不会导致无法区分变量服务于哪一块功能,可读性差?
2、如果改为reactive的形式是不是可以从形式上区分变量呢,
比如弹框变量:let alertData = reactive({ isOpen: false }),
弹框以外的变量:let otherData = reactive({ num: 0}),
这样是不是视觉上可以更直观反映出变量的定义,就是不知道这么写可不可以,是否支持?

写回答

3回答

张轩

2020-09-25

同学你好 我觉得使用 ref 和 reactive 就是我在课中说的 仁者见仁 智者见智的原理 现在官方文档中也没有明确的规定,

第一,就像刚才的原生 javascript 的代码一样,像你平常写普通的 js 代码选择原始类型和对象类型一样来选择是使用 ref 还是 reactive。

第二,所有场景都使用 reactive,但是要记得使用 toRefs 保证 reactive 对象属性保持响应性。

所以其实我们可以把它看成你平时写 javascript 的时候直接用变量还是用对象,看你的个人喜好,我觉得你觉得你的做法完全没问题的,把不同的功能使用多个 reactive 这是很好的实践过程。

2
1
Boy越越
非常感谢!
2020-09-27
共1条回复

EditYJ

2020-09-25

分类方式因人而异,我觉得能提高代码的可阅读性,减轻后期维护的难易程度就是好的写法。

1
0

前端菜鸭

2020-10-24

用ref的话,用注释隔断就好了?主要看个人习惯,或者公司规范吧

0
0

Vue3 + TS 仿知乎专栏企业级项目

带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能

3074 学习 · 2253 问题

查看课程