flowtype typeof class 没有按预期工作
flowtype typeof class does not work as expected
下面的代码没有类型检查。
错误说:
"Cannot assign new YourClass()
to test1
because YourClass
[1] is incompatible with class YourClass
[2]."
/* @flow */
class YourClass {
method(){}
}
let test1: typeof YourClass = new YourClass();
typeof SomeClass
究竟推导出什么?
谁能解释一下这是怎么回事?
typeof YourClass
是构造函数本身的类型,所以下面的类型检查:
let test1: typeof YourClass = YourClass;
如果您需要传递一个构造函数并且您的 class 有子class,例如
,这会很有用
class Subclass extends YourClass {}
let test1: typeof YourClass = Subclass;
下面的代码没有类型检查。 错误说:
"Cannot assign new YourClass()
to test1
because YourClass
[1] is incompatible with class YourClass
[2]."
/* @flow */
class YourClass {
method(){}
}
let test1: typeof YourClass = new YourClass();
typeof SomeClass
究竟推导出什么?
谁能解释一下这是怎么回事?
typeof YourClass
是构造函数本身的类型,所以下面的类型检查:
let test1: typeof YourClass = YourClass;
如果您需要传递一个构造函数并且您的 class 有子class,例如
,这会很有用class Subclass extends YourClass {}
let test1: typeof YourClass = Subclass;