我从github克隆了一个应用程序,并在“ index.ts”文件中找到了它,其中包含以下条目:
export * from './auth.guard';
export * from './basic-auth.interceptor';
export * from './error.interceptor';
export * from './fake-backend';
在这种情况下,“导出*”有什么作用?
答案 0 :(得分:4)
这不仅限于Angular,而且此类语句可以在任何ES6 +代码中找到。其实像这样的语句
export * from './fake-backend'
将导入模块中所有可用的功能,比提供要在ES6 +中导出或导入的每个文件/模块的相对路径要方便得多。
以类似的方式,例如,您可以在我们的应用程序中导入模块
import { FakeBackend, AuthGuard, ErrorInterceptor } from 'guards';
而不是像这样的多个语句
import { FakeBackend } from 'guards/fake-backend';
import { AuthGuard } from 'guards/auth-guard';
import { FakeBackend } from 'guards/error-interceptor';
您还可以导入模块,然后在导入语句中指定别名,例如
import * as PDFMaker from 'JsPdf';