与类同名的Typescript导入接口

时间:2019-02-03 06:34:46

标签: typescript class import interface

以下作品:

interface Foo {
  num: number;
}

class Foo {
}

以下不起作用,错误

  

导入声明与本地声明“ Foo”发生冲突

import { Foo } from "./someModule";
class Foo {
}

这是预期的行为吗?如果我可以在一个模块中创建一个具有相同名称的接口和类,为什么不能导入?

1 个答案:

答案 0 :(得分:2)

两种情况下的行为不同。在第一种情况下,您不会得到一个接口和一个类,而最终得到的是一个由两者合并而成的类。 here描述了该行为。但是,这种行为不会在模块之间发生。

如果您要扩充现有模块,则所需的行为称为模块扩充,并在here中进行了描述。