使用构造函数时找不到名称,但在铸造时可以
Cannot find name when using the constructor but can when casting
我导入了两种。
import { UserManager, WebStorageStateStore } from "oidc-client";
从源代码来看,这两个都是 类 带有构造函数的。我可以调用第一个的所有构造函数,也可以用第二个进行转换,但我不能调用第二个的构造函数。
这两个都有效。
let um = new UserManager({});
let w1 = <WebStorageStateStore> {};
TypeScript 抱怨这个。 "Cannot find name 'WebStorageStateStore'"。
let w2 = new WebStorageStateStore();
为什么 TypeScript 可以转换为类型却找不到构造函数?
TypeScript complains about this one. "Cannot find name 'WebStorageStateStore'".
仅仅因为变量存在于 type 声明 space 并不意味着它也存在于 variable 声明中 space。在您的情况下,它仅在 type space 中。
更多
这里包含声明 spacehttps://basarat.gitbooks.io/typescript/content/docs/project/declarationspaces.html
我导入了两种。
import { UserManager, WebStorageStateStore } from "oidc-client";
从源代码来看,这两个都是 类 带有构造函数的。我可以调用第一个的所有构造函数,也可以用第二个进行转换,但我不能调用第二个的构造函数。
这两个都有效。
let um = new UserManager({});
let w1 = <WebStorageStateStore> {};
TypeScript 抱怨这个。 "Cannot find name 'WebStorageStateStore'"。
let w2 = new WebStorageStateStore();
为什么 TypeScript 可以转换为类型却找不到构造函数?
TypeScript complains about this one. "Cannot find name 'WebStorageStateStore'".
仅仅因为变量存在于 type 声明 space 并不意味着它也存在于 variable 声明中 space。在您的情况下,它仅在 type space 中。
更多
这里包含声明 spacehttps://basarat.gitbooks.io/typescript/content/docs/project/declarationspaces.html