问题标签 [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.
javascript - 导入值与其导出值断开连接仍然是只读的吗?
给定的是以下模块结构:
如果我有一个表达式(export default b
或export default 1
)的默认导出,则相应的导入与此导出值断开连接。考虑到这一点,这样的导入是否仍然是只读的,也就是说,我可以重新分配a
还是c
?
ember.js - 集成测试渲染流程——EmberJS
我正在为我的一个插件组件编写集成测试。我还使用npm link将其链接到同级项目:
我在有问题的组件中使用了其中一个my-linked-project
mixin 。my-project
render
这在应用程序运行时运行良好,但在我的集成测试中似乎遇到了一些问题。
但是我明白了Error: Could not find module 'my-linked-project/mixins/foo'
。
- 我在哪里可以阅读更多关于
render
/hbs
被调用时会发生什么的信息? - 问题可能是测试文件的位置,找不到外部链接的项目吗?
javascript - 我的“导入”语句是否被错误地转译?
据我了解,以下两行是等效的:
和...
这两个示例都应使write-up
模块的默认导出为Up
.
不幸的是,使用 Babel 和 Webpack,这不是我看到的行为。
第一个例子工作得很好。它产生这一行:
Up
设置为write-up
模块的默认导出,这是我期望的行为。
第二个例子不起作用。它产生这个:
不是设置Up
为默认导出,Up
而是设置为包含模块的每个导出write-up
(包括default
字段)的对象。
我究竟做错了什么?
这是我的 Webpack 配置中的相关部分:
javascript - 从 TypeScript 中的模块调用导出的函数
这个问题很简单。
这是模块导出函数的方式。
这是 ES5 模块如何使用它的。
现在在 Typescript 中有点不同。
这会返回一个我以前从未见过的奇怪对象,一个没有键值对的嵌套对象。
如何调用该函数debug
javascript - 为什么 rollup.js 在其输出中不包括 - 专门 - 导出的值?
我是 Rollup 的新手 - rollupjs.org - 不明白为什么要删除导出的值;大概是在汇总期间通过摇树。
我有data.json
一些基本数据,我想作为模块的一部分提供:
...以及将导出它们的模块:
rollup.js 是否无法将导出语句识别为“使用”,因此仅在其中的任何内容都会从输出中获得“treeshaken”?
javascript - 为什么我的反应变量不会在 DOM 上呈现?
我正在学习 React,并且正在使用来自 React 官方网站create-react的这个 github 存储库
我已按照说明开始编辑App.js
提供的内容。
在我的 App.js 文件中,我正在创建一个类并使用idTodo
在 DOM 上呈现它。#container
这是App.js
文件:
这是index.js
文件:
这是index.html
文件:
当我打开网页时出现此错误21:5 warning 'Todo' is defined but never used no-unused-vars
这里发生了什么?
javascript - Mocha 在导入的代码中找不到模块
我有一个 Phoenix 应用程序,并且正在尝试将 Mocha 连接起来以进行 javascript 单元测试。我想测试模块“二”,它导入模块“一”,但我不知道如何配置 Mocha 来查找模块一。
这是测试代码:
网络/静态/js/one.js
web/static/js/two.js
> 测试/js/two_test.js
这是我运行时的输出npm test
早午餐.config
javascript - 如何让 ES6/2015 导入/模块在浏览器中工作?
我似乎无法让ES6/2015 导入工作。从这本Understanding ECMAScript 6 book中,我了解到我需要使用以下属性编写<script>
标签:type
modules
然后我可以import
在module.js
. 但是,它不适用于最新的 Firefox (v48.0.1) 和 Chrome (v53.0.2785.89)。当我console.log
在module.js
.
如何在浏览器中使用 ES2015 的导入机制(本机,不使用 babel/webpack 之类的东西)?
更新:看起来微软的 Edge 浏览器支持模块,至少在实验模式下。为什么其他浏览器还不支持它,至少在实验模式下?
javascript - 将自定义全局打字稿定义转换为模块
我们在一个反应项目中使用了一个名为Grapnel的客户端路由库。该库没有可用的定义文件,因此我编写了自己的定义文件,该文件正在工作,但我必须将其创建为全局模块并通过脚本标记以老式方式加载脚本。这不是最优的,因为项目中的所有其他 javascript 都由 webpack 捆绑。
Grapnel 通过 npm 安装;我希望能够在 webpack 中捆绑 Grapnel,并且对我们应该将定义编写为全局的场景感到好奇。Grapnel 是用 ES5 语法编写的:
因此需要实例化如下
我是否可以编写 .d.ts 以便我可以使用 ES6 模块导入语句?还是我需要将 Grapnel 称为全局变量?如果我必须使用全局定义,这是否会排除在 webpack 中的捆绑?
这是我的工作(全球)版本:
感谢您提供的任何建议。我是编写 .d.ts 的新手,但熟悉打字稿和使用打字。