我们什么时候使用typescript import * as?

Ole*_*Ole 2 javascript node.js npm typescript angular

尝试开发一个做什么用的心理模型import * as Blah。例如:

import * as StackTrace from 'stacktrace-js';
Run Code Online (Sandbox Code Playgroud)

这是如何工作的,我们什么时候做import *

Sac*_*pta 16

不是真正的答案,而是一种用法:考虑到您的应用程序中要使用一些常量字符串,您可以在单个文件中定义它们并导出

export const name = "NAME";
export const someOtherString = "SOME_CONST_STRING";
Run Code Online (Sandbox Code Playgroud)

然后您可以使用以下方法将它们导入到单个变量中:

import * as CONST_STRINGS from './yourFilePath';
Run Code Online (Sandbox Code Playgroud)

并用作

CONST_STRINGS.name 
CONST_STRINGS.someOtherString
Run Code Online (Sandbox Code Playgroud)


Bri*_*ams 7

TypeScript文档中

将整个模块导入单个变量,并使用它来访问模块导出


示例代码将模块的所有导出stacktrace-js导入到名为的变量中StackTrace

任何命名的导出将作为具有相同名称的属性提供。

如果模块具有默认导出,它将用作default属性。


另请注意,来自TypeScript模块文档

从ECMAScript 2015开始,JavaScript具有模块的概念。TypeScript具有这个概念。

因此,TypeScript模块的行为与ES6 JavaScript模块相同。


如果import * as要访问单个变量中的所有模块导出,则可以在TypeScript或JavaScript中使用。