◆

TypeScript 必传属性未传终端不报错的解决

2023-02-02 01:370

场景

当我开发了一个组件,它的一个属性是必传的,但是我使用的时候没有传入,终端编译能正常通过,而且半天也不提示报错。但重启项目终端会提示报错。

这会导致一个什么问题,如果这个组件重构了,加入或减少了一些属性,这个组件有很多人使用,然后如果编译器没有提示报错的情况下,你只会修改你当前的业务组件, 当你的代码传到 git 上,别人拉取了你的代码,启动项目时,其他使用这个组件的页面,由于缺少某个属性,ts 就会在终端提示报错,导致项目无法运行

问题原因

typescript 编译器运行比较慢导致的,有些类型报错可能由于 ts 的内部编译慢或者其他原因没有检查出来,所以不会再终端上提示报错。

解决方法

-手动执行 tsc 检查类型。

  • webstorm 可以通过如下方式检查
typescript 必传属性没有传入 但是终端不报错
  • 在 git 提交时加入 typescript 类型检查钩子
💬留言板0

还没有留言,来发表第一条吧~

PAGE LOAD / LIVETypeScript 必传属性未传终端不报错的解决加载中