javascript - 多个 "static"函数的 ES6 模块语法

标签 javascript module ecmascript-6

我来自 Java,并试图将“实用类”的想法转变为可在 ES6 中运行的东西。

在我的文件 numbers.js 中,我可以导出单个函数:

export default function padDigits(number, digits) {
    return new Array(Math.max(digits - String(number).length + 1, 0)).join(0) + number;
}

然后可以将其导入到另一个文件中,例如:

import padDigits from '../utils/numbers';
...
var paddedNum = padDigits(myNum, 2);

但是:我希望有两件事是可能的:我想(1)从这个单个文件中导出多个函数,以及(2)我希望可以通过单个导入语句,并通过 namespace /类名前缀调用,例如:

import Numbers from '../utils/numbers';
...
var paddedNum = Numbers.padDigits(myNum, 2);
var truncatedNum = Numbers.truncate(myNum, 3);

但我很难找到正确的语法来完成此任务。

最佳答案

您是否正在寻找通配符?

import * as nums from '../utils/numbers';

类似的问题:TypeScript 1.5: ES6 Module default import of CommonJS 'export =' (.d.ts only issue?)

更详细的答案:New es6 syntax for importing commonjs / amd modules i.e. `import foo = require('foo')`

关于javascript - 多个 "static"函数的 ES6 模块语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32923600/

相关文章:

javascript - 如何让这个嵌套函数挑战问题在 JavaScript 中发挥作用?

javascript - 使用 Angular JS 将简单函数转换为工厂或服务时遇到问题

javascript - 如何在加载 Vue 时淡入图像

c - Linux 串行端口 (tty) 重定向

模块中的 JavaScript 跨文件私有(private)状态

module - 打字总是提示全局模块

javascript - 为什么这个构造函数调用方法会返回一个对象?

javascript - Ember-cli : define routes outside of the app/routes/folder

javascript - Microsoft BotFramework - 建议的卡片

javascript - promise 解决得太快