导入其他文件后,类可见性会更改

时间:2016-05-30 16:26:24

标签: module typescript visual-studio-2015 angular

我有一个带有打字稿的angular2项目,我面临着一种我无法理解的奇怪行为。我有一个包含组件的类文件(称为main.ts),因此文件顶部的有一些导入,我创建了一个代表其他地方的自定义类的类。项目(让我们说模型/ typeFoo.ts)。在typeFoo.ts中有一个简单的TypeFoo类没有导入,并且在某种程度上类型TypeFoo可以在main.ts中使用,而不需要在main.ts中导入文件。那很奇怪?然后我在typeFoo.ts中创建了另一个文件的导入,并且main.ts会自动抱怨TypeFoo不再可见。有人可以解释这里发生了什么吗?

main.ts
--models/typeFoo.ts

class TypeFoo {
   name:string;
}

1 个答案:

答案 0 :(得分:2)

  

某种类型TypeFoo可以在main.ts中使用,而不需要在main.ts中导入文件。这很奇怪

如果没有根级别importexport,则该文件将被视为全局文件。添加importexport会将其转换为模块(一件好事)。

此处介绍:https://basarat.gitbooks.io/typescript/content/docs/project/modules.html