类的严格类型

时间:2019-09-27 09:50:41

标签: typescript typescript-typings

我们在打字稿中遇到了一个问题,当时我们在指定类型应该是一个非常特定的类。但这使instanceof检查代码的另一部分失败。

class MyClass {
    public a: string = 'foo';
    constructor() {}
}

const foo:MyClass = new MyClass();
const bar:MyClass = { a: 'bar' };

console.log(foo instanceof MyClass, bar instanceof MyClass); // true, false

现在,这显然是正确的,因为酒吧应该未通过instanceof检查。

但是打字稿没有显示任何警告{ a: 'bar' }不是类实例。我知道它与它的公共签名匹配,但我实际上需要它成为“班级”

出于上述简化示例中未显示的原因,我们需要使用instanceof

我发现Google很难找到答案。

有什么办法可以使打字稿更严格?

0 个答案:

没有答案