使用构造函数时找不到名称,但可以在转换时找到

时间:2016-10-10 02:33:24

标签: typescript typescript2.0 oidc-client-js

我导入了两种类型。

import { UserManager, WebStorageStateStore } from "oidc-client";

从查看源代码,这两个都是带有构造函数的类。我可以是第一个构造函数,并且可以使用第二个构造函数,但是我不能调用第二个构造函数。

这两项都有效。

let um = new UserManager({});
let w1 = <WebStorageStateStore> {};

TypeScript抱怨这个。 “找不到名字'WebStorageStateStore'”。

let w2 = new WebStorageStateStore();

为什么TypeScript在能够转换为类型时找不到构造函数?

这是source for oidc-client

1 个答案:

答案 0 :(得分:1)

  

TypeScript抱怨这个。 “找不到名字'WebStorageStateStore'”。

仅仅因为 type 声明空间中存在变量并不意味着它也位于变量声明空间中。在您的情况下,它仅在类型空间中。

更多

此处涵盖声明空间https://basarat.gitbooks.io/typescript/content/docs/project/declarationspaces.html