含never类型成员的TypeScript类编译异常?是否为Bug?
TypeScript Strict模式下空构造函数引发的编译反常问题
我完全认同你的看法——这种情况绝对不应该被允许!
你碰到的是TypeScript特定版本(2.7.1以及2.8.0-dev.20180206)里的一个奇怪行为:
- 当开启
strict编译选项时,只要类中存在一个空构造函数,这段代码就能正常通过编译; - 可一旦移除这个空构造函数,编译就会符合预期地失败,这显然违背了
strict模式严格类型检查的设计初衷。
这种情况大概率是对应版本的编译器bug,毕竟strict模式的核心就是要收紧类型规则,不应该因为一个空构造函数就跳过本该触发的错误校验。
内容的提问来源于stack exchange,提问作者Gregg54654
相关产品推荐
相关产品推荐

