vue3中对ts类型的实践
来源:3-14 方法拦截器进一步深度理解和本章总结说明

咩仔
2023-10-25
老师好,学完类型并结合您之前对我类型疑问的回答我做了一个vue3+ts开发的实践
之前我提问:“是不是应该对所有类型,能定义则必须完全定义”
您回答:“是正确的,这也是 ts 该具备的能力”
对普通变量和函数等类型定义是比较清楚的。
但是面对请求和数据渲染有点迷茫了,我好像做到了能定义则完全定义,但是这真的是好的写法吗?感觉添加了非常多的开发工序步骤。
我如果所有接口都这样定义这样写是对的吗?特别是红色框出来部分是不是可写可不写?还是就应该这样写,或者有没有别的什么建议。
希望老师解答一下,谢谢
写回答
2回答
-
因为我们的项目上线后的维护往往和项目开发同等重要!所以“能定义则必须完全定义”好处明显: 是基于以下考虑 1. 防止运行错误:类型约束作用,防止写错推至到运行后发现 。 2.较大提升可维护性:项目变大时,项目中的类型会很多,明确定义类型利于后期修改,因为有可能我们辞职了,对新人更友好! 3.可读性变好:当我们看第三方库,或者即使过一段时间回头再来看自己写的项目(可能有些业务都忘了),那可读性的好处就很明显了。 4. TS 自动提示:,这点好处就无需解释了。 你可以结合图片来看哪些位置的类型需要加,哪些也可加可不加
00 -
咩仔
提问者
2023-10-25
还有一个问题就是list是不是应该这样写?
const list = ref<LoginResp>({ status: 0, token: "", admins: [] }) 我就从 TS 方面来解答, 从 TS 类型上来看 LoginResp 是一个对象 ,变量名修改成对象含义的变量名即可。
00
相似问题