问题标签 [es6-modules]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7492 浏览

javascript - Rollup.js 如何在没有任何更改的情况下导入 js 文件(不是 es6 模块)(myvar$extrastring)

首先,我理解为什么 rollup.js 需要在某些变量的末尾附加额外的字符串以避免冲突但是......我不明白如何“连接/导入”一个不是 amd/ 的简单 javascript 文件commonjs/es6,但简单的显示模块!

我有以下文件结构:

foo.js

bar.js

main.js

构建后,我得到:

构建.js

那么我怎样才能得到 Foo 而不是 Foo$1 呢?或者 Foo$1 而不是 Foo 的 bar.js ?

编辑:

如果在 main.js 中,我在视图中使用默认导入来覆盖默认名称:

我收到这样的错误(正常!):

不存在的导出“默认”由 main.js 从 foo.js 导入

这是一个误解,但是在对 stackoverflow 和互联网进行研究之后,我没有发现如何解决这个棘手的问题。

所以...提前谢谢!

0 投票
1 回答
1870 浏览

javascript - 如何解构 ES6 模块联合导出

我在导出场景中遇到了一些小问题,我不知道为什么。我可能需要一个 Babel 插件来解决它,但不确定是哪个。

我正在运行通天塔。这是我的rc:

看来我应该能够像往常一样在 import 语句中的 test.js 中解构,但不能。如果在 index.js 中,我导出单个函数,那么它就可以了。如:

但是我想避免这种情况。

0 投票
1 回答
2188 浏览

javascript - 使用 Rollup Babel 插件时,如何告诉 Babel 忽略 es6 导入?

有什么办法让我告诉 babel 忽略某些导入,例如我不希望 babel 接触任何 es5 导入,比如 polyfill。

我已经尝试了排除选项,但它没有做任何事情。这是我的开发依赖项:

这也是我的 index.js ,其中的注释显示了我希望 babel 忽略的内容:

我怎样才能做到这一点?我需要另一个包来处理这个吗?

非常感谢任何帮助,谢谢。

0 投票
1 回答
1938 浏览

node.js - mocha.opts 不适用于 babel-register

这是我的mocha.opts文件:

这是我的.babelrc文件,我正在使用env根据提供的目标进行转换的预设:

我发现当我运行时mocha,节点对象猛烈地使用import它在我的代码中正常工作:

这是 mocha 抛出的错误:

0 投票
0 回答
119 浏览

webpack - 使用 webpack 外部的 3rd 方 es6 库

我的 node_modules 中有一个 es6 中的第 3 方库,它使用 react、mobx 等,我想将其外部化(以使包更小)。我现在找到了任何文章或教程如何实现这一点。一种方法是将 lib 转换为 es5 作为 webpack 库,但我只想使用我需要的部分(通过 require)。有没有办法使用使用外部依赖项的原始 es6 lib?

0 投票
0 回答
399 浏览

ecmascript-6 - 如何组织一个框架是 ES6

是否有“es6 方式”将功能集合打包到框架中?以下哪种方法(或者如果我遗漏了某些方法,可以使用其他方法)会起作用?我正在使用 Babel 转译代码,并希望确保我选择的路线尽可能面向未来。

的背景:

我开始了一个项目,并希望将很多功能提取到它自己的框架中。实用功能的数量已经足够大,以至于它们应该与使用它们的应用程序的其余部分分开。类和函数按文件夹组织,每个都在它自己的文件中,如下所示:

所以目前在answers.js我有包括:

接下来我想组织和打包一个myframework我可以从中导入的新项目?

选项1:

构建一个myframework.js文件,什么?,命名子部分?然后answers看起来像:

或者有没有一种方法来声明子部分,这样 import 可能如下所示,并且myframework.js仍然是一个文件:

选项 2:

为每个部分构建一个文件。我想调用基本级别core或其他东西:

和:

0 投票
1 回答
81 浏览

javascript - ES-2015 模块可以自我感知吗?

在 javascript ES-2015 模块中,模块成员可以知道还有哪些其他模块成员吗?

例如,在 CommonJS 模块中,这是可能的:

在等效的 ES-2015 模块中,我们如何编写whoAmI()函数?

0 投票
1 回答
329 浏览

angularjs - AngularJS:ES6 中的 route.resolve

我正在尝试重构现有的 Angular-Project 以使用 ES6-Modules 和import语句。这适用于大多数应用程序,但resolve我的路线中的块给我带来了麻烦。

据我所知,语法应该和以前一样:

但是,在中设置断点someData告诉我,我的“DataService”没有通过 angulars 依赖注入正确解析(或者更确切地说:它已正确解析,但尚未初始化)。someData该服务在相应的模块上注册,但在进入-function之前没有调用它的构造函数。

因为我认为我的语法有误,所以我做了一些实验,发现一些其他服务(使用相同的语法创建并在与DataService.

你知道在哪里看或我如何解决这个问题吗?

0 投票
0 回答
81 浏览

javascript - 转换角度模块

因此,我将数据持久性框架构建为 Angular 1 模块(您可以在此处找到),现在想在其他非 Angular 应用程序中使用它(或重写它),例如在 React 中。

那里没有与 UI 功能、路由或任何其他特定于 Angular(无控制器)相关的内容,它只是使用 Angular 的模块系统组织的 JavaScript 对象。

(几乎:它使用$q来表示 promise,并与摘要循环集成,但我将删除该位并切换到另一个 promise 库以使其在 angular 之外工作)

所以我想要做的就是将它重写为某种“JavaScript 模块”,但我不知道如何解决这些问题。

所以我的问题是:

  • 我应该创建什么格式的模块(AMD、CommonJS、ES6?)记住我可能想在 Node 和 React 中使用它。
  • 我可以获得与角度模块相同的依赖注入吗?
  • 是否有任何$q替换框架(例如 Bluebird?)可以,或者根据我使用的模块格式是否有限制?
  • 我显然不是第一个这样做的人(尽管没有找到任何可用的信息),所以如果有指南,甚至是转换工具 :-D 你可以指出我将不胜感激。
0 投票
1 回答
9552 浏览

es6-module-loader - require working but import not working

I have a actions.js file that is exporting actions like this

but when i import it using es6 import i get error

but when i require it using common js require it works just fine! Can someone explain to me why is this happening, I mean i read these two are same things... Something seem to be different ?