es6-modules相关内容
我在运行节点应用程序时使用标志--experimental-modules,以便使用ES6模块. 但是,当我使用此标志时,元变量__dirname不可用.是否有另一种方法来获取与该模式兼容的存储在__dirname中的相同字符串? 解决方案 从Node.js 10.12开始,有一种替代方案不需要跨平台创建多个文件并处理文件名中的特殊字符: import { dirname }
..
我正在尝试将ES6导入挂起,并尝试使用此示例中提供的语法: 备忘单链接 我正在浏览支持表,但是找不到支持新导入语句的版本(我尝试查找文本导入/要求),我目前正在运行节点8.1.2,并且还认为,由于备忘单是指.js文件,因此它应该与.js文件一起使用. 运行代码时(摘自备忘单的第一个示例): import { square, diag } from 'lib'; 我得到了
..
我想根据某些条件更改export { default } from 'MyFile',所以我可以用字符串变量替换文件吗? 目前我有这样的东西: let exportFrom if(SOME_CONDITION) { exportFrom = '../Something/Blah' } else { exportFrom = './SomethingElse' } export
..
我在两个单独的文件中有两个类,一个类是另一个的扩展.基类包含一些使用节点模块的import语句.我不清楚为什么派生类(在单独的文件中)不能识别基类! 有人可以澄清一下吗? // UtilBase.ts /// ///
..
我在Babel环境中的ES6中遇到了这个问题: // A.js class A { } export default new A(); // B.js import C from './C'; class B { } export default new B(); // C.js import A from './A'; import B from './B'; class C {
..
对于这些语句中的模块说明符是什么,我感到困惑: export {bar} from "foo"; import {bar} from "foo"; "foo"是什么意思?它不能是文件,因为它类似于"./foo"之类的东西.如果不是文件,那么我认为它是一个ID.如何定义ID? 我正在从js文件中导出,但是导入将是firefox浏览器中的嵌入式html脚本(type="module"
..
..
假设我们要测试使用Sinon的另一个函数调用了特定函数. fancyModule.js export const fancyFunc = () => { console.log('fancyFunc') } export default const fancyDefault = () => { console.log('fancyDefault') fancyFunc()
..
当我尝试使用非常简单的应用程序运行本地节点服务器时,出现以下错误消息. 从" http://localhost:8080/importing.js "加载模块由于不允许的MIME类型("text/html")而被阻止. 我是Node和ES6模块的新手,所以我不太了解问题的详细信息.根据此 URL 模仿型'应用程序/javascript'必须明确提供给模块.但是,如何在下面的示例中实现这
..
我正在尝试在我的Web应用程序中使用lodash.我已经在本地项目中使用npm安装了lodash. 我打算在代码中使用ES6模块. 这是我的main.js文件: import * as _ from "lodash"; _.each([1, 2, 3, 4], (i) => { console.log('index each ' + i); }); 我将它包含在in
..
我对react下拉菜单有一个小问题. 我可以提取下拉列表中的值,但是我也需要密钥,因为我的页面用于销售东西.因此,这是一个关联表,我需要每个表的ID来进行查询 INNERJOIN . 这是我填写的方式: let options_customers = []; serviceList[0].map((service, i) => optio
..
我正在尝试在Chrome中提供原生ES6模块支持. jQuery不是es6模块(不导出)-我知道.尽管如此,试图了解这对我们意味着什么. 这有效,没有错误: import * as jQuery from "./js/jquery.js"; window.console.log(jQuery);
..
我有一个'notifications.js'模块,看起来像这样: import { Notifications, Permissions } from 'expo' export function setLocalNotification(storage = AsyncStorage) { return storage .getItem(NOTIFICATION_KEY)
..
我已经看到了一些有关在这里嘲笑默认出口的问题,但是我认为这还没有被问到: 当模拟正在测试的模块的依赖项的默认导出时,如果该模块使用ES6 import语句导入了依赖项,则测试套件将无法运行,说明TypeError: (0 , _dependency.default) is not a function成功,但是,如果该模块使用改为require().default调用. 根据我的理解,
..
我想在我开玩笑的测试代码中摆脱掉全局变量.特别是describe,it和expect describe('Welcome (Snapshot)', () => { it('Welcome renders hello world', () => { ... }); }); 所以我尝试添加 import {describe,it} from 'jest'; 和
..
我正在为React代码库添加打字稿支持,并且在应用正常运行时,玩笑的测试到处都失败了,显然无法识别es6语法. 为此,我们正在使用 ts-jest .以下是我在尝试处理Jest的测试设置文件时得到的错误消息. FAIL src/data/reducers/reducers.test.js ● Test suite failed to run /Users/ernest
..
此问题与测试javascript和模拟功能有关. 说我有一个看起来像这样的模块: export function alpha(n) { return `${n}${beta(n)}${n}`; } export function beta(n) { return new Array(n).fill(0).map(() => ".").join(""); } 然后我
..
在这里我问的这个问题: 为什么如果从另一个模块调用该模块,对一个模块进行变异会更新引用吗?如果从其自身调用,则不会更新该引用吗? 我在问模块突变的性质. 事实证明,ES6模块实际上无法进行突变-它们的所有属性都被视为常量. (查看此答案) 但是以某种方式-当Jest测试模块时-它们可以被突变,这就是Jest允许模拟的方式. 这是怎么回事? 我想象这是一个正在运行
..
如何使用Jest测试ES6模块. 示例: sum.js const sum = function (a, b) { return a + b; } export default sum; sum.test.js import sum from './sum'; test('adds 1 + 2 to equal 3', () => { expect(sum
..
首先,道歉!我努力总结标题中的问题,所以请随时修改。 问题 假设我有两个公开默认函数的ES6文件 // file_1.js export default function(){/ * do东西* /} // file_2.js 导出默认函数(){/ *做另一件事* /} 现在我使用以下输出配置使用webpack(w / babel loader)
..