[英]Typescript generic function doesn't complain about callback return type
Typescript 泛型函数不会抱怨回调返回类型。 它不应该抱怨类型与对象不匹配吗? 为什么这是一个有效的打字稿?
const a = <T>(shape: T | (() => T)): T => {
return shape instanceof Function ? shape() : shape;
}
const func = () => ({ x: '', o: '' });
a<{ x: string }>(func); // this should fail to compile
a<{ x: string }>({ x: '', o: '' }); // fails to compile
上下文类型(在您的情况下a<{ x: string }>(func);
)不执行多余的属性检查,没有关于此的规范,所以也许这是设计使然
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.