代码有效性保障与Cypress测试实践
1. 代码类型检查优化
在代码开发中,我们对 toggleAssociatedConcerts 的参数进行了修改,明确允许传入 undefined 值。当传入的值为 undefined 时,函数会直接返回。虽然从技术层面讲这并非必要操作,但它能清晰表明我们对 undefined 值的处理。
同时,我们解决了一个调度问题,该问题与 VenueThunk 的类型有关。通过将类型定义中的 null 参数改为 void ,问题得以解决。或许从一开始就应该使用 void ,特别是在开启了空值检查的情况下,TypeScript 希望类型定义更加明确。
经过这些修改,代码再次成功编译,并且更加严格。我们修复了 CalendarController 中的一个潜在 bug,在其他方面也让代码更加一致。这些潜在错误虽然看似微小,但却促使我们改变对类型检查的看法。
以往,我们将类型检查视为开发者与编译器之间的一种沟通方式,通过告知编译器变量的类型,让编译器在代码不同部分出现类型不匹配时发出警告。而现在,我们可以将类型检查看作是一种预防运行时错误的手段,通过让无效状态无法通过编译器检查,避免程序在运行时出现问题。例如,当我们假设某个选择器存在于 DOM 中,但实际上它并不存在时,编译器会提醒我们代码未处理这种情况,此时我们就需要思考应对策略。
对于编译器错误的
代码有效性与Cypress测试实践
超级会员免费看
订阅专栏 解锁全文
1069

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



