Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在TypeScript中导入和导出名称空间、接口和类型?从索引文件?_Typescript - Fatal编程技术网

如何在TypeScript中导入和导出名称空间、接口和类型?从索引文件?

如何在TypeScript中导入和导出名称空间、接口和类型?从索引文件?,typescript,Typescript,我想声明一个模块并定义它的类型和接口,而不需要重复我自己,这样我就可以定义一个类型,如果它是可以共享的,那么就可以从其他地方再次使用它 例如,如果我有一个名为:User的模块,我想定义一个名为User的名称空间,在它下面定义一个名为Address的接口,在Address下面定义一个或多个类型 现在,地址类型是我可能会在其他模块中使用的东西-不特定于用户,但也适用于订单 因此,我考虑创建一个接口目录,在这个目录中添加一些文件,每个接口的每个文件,并将所有这些接口导入index.ts文件,以便可以从

我想声明一个模块并定义它的类型和接口,而不需要重复我自己,这样我就可以定义一个类型,如果它是可以共享的,那么就可以从其他地方再次使用它

例如,如果我有一个名为:User的模块,我想定义一个名为User的名称空间,在它下面定义一个名为Address的接口,在Address下面定义一个或多个类型

现在,地址类型是我可能会在其他模块中使用的东西-不特定于用户,但也适用于订单

因此,我考虑创建一个接口目录,在这个目录中添加一些文件,每个接口的每个文件,并将所有这些接口导入index.ts文件,以便可以从应用程序的任何位置导入,实际上甚至可以从不在同一应用程序中的其他包、模块和服务导入

例如:

Interfaces
  Address.ts
  Contact.ts
  Role.ts
  index.ts

// index.ts

import Address from './Address'
import Contact from './Contact'
...etc

export default { Address, Contact }
但这行不通。因为TS只帮助编写代码,它不会向代码中添加实际的模块,也不会像我上面提到的那样导出代码,而不仅仅是类型和接口

那么如何导出和导入TS对象(类型、接口、名称空间等)

最佳做法是什么?你能提供它的演示结构吗?

类似这样的东西

我做了一个测试,它只是将一些数据打印到控制台,以证明类型导入工作正常。这是基于在中有一个类型为的types.ts文件,并将其导入index.ts,这样您就可以从Typescript中的另一个文件导入类型