TypeScript开发中的实用技巧与策略
1. Zod数据验证的特点
Zod在提供预期的数据形状方面非常有用,无需开发者进行过多工作。然而,它也有代价,运行时验证需要时间,数据集越大,验证所需的时间就越长。此外,它的体积为12KB,相对较大。因此,在边界数据处使用这种验证时,要确保确实有必要。
如果请求的数据来自公司内部的其他团队,甚至是坐在旁边的同事,那么相互沟通并朝着相同目标协作,比使用任何库(包括Zod)都更有效。类型是协作的指导方式,而不是替代协作的手段。
2. 解决索引访问限制问题
2.1 问题描述
在使用索引访问对象属性时,TypeScript可能会报错,提示要赋值的类型不能赋值给 never 类型。例如以下代码:
let person = {
name: "Stefan",
age: 39,
};
type Person = typeof person;
let anotherPerson: Person = {
name: "Not Stefan",
age: 20,
};
function update(key: keyof Person) {
person[key] = anotherPerson[key];
// 报错:Type 'string | number' is not assignable to type 'never'.
// Type 'string' is not assignable to type 'never'.(2322)
}
upda
超级会员免费看
订阅专栏 解锁全文
1095

被折叠的 条评论
为什么被折叠?



