草庐IT

babel-jest

全部标签

javascript - 使用 babel-preset-env 将 polyfill 作为导入语句更好,还是将它们添加到 webpack.config.js 的条目中更好?

babel-preset-env提供选项useBuiltIns将其应用于babel-polyfill并将import'babel-polyfill'转换为特定的、基于环境的import'core-js/whatever.如果我在我的Webpack入口部分添加babel-polyfill(参见下面的示例),是否应用此转换,或者在那种情况下useBuiltIns被忽略并替换为所有可能的进口?entry:{app:['babel-polyfill','./src/app.js']} 最佳答案 它在您指定时起作用:"presets":[..

javascript - Jest es6 模块 : unexpected module import

我正在尝试测试一个需要像这样导入es6模块的文件:https://repl.it/HG9t/0看来我缺少一些使其正常工作的配置。如果您可以使用另一个单元测试框架轻松实现这一点,我也很感兴趣。预先感谢您的帮助。 最佳答案 安装所需的依赖项:yarnadd--devbabel-jest@babel/core@babel/preset-env或npminstall--save-devbabel-jest@babel/core@babel/preset-env在您的主文件夹中创建babel.config.js并将其粘贴到那里://babel

javascript - 脚本标签文本/babel 变量范围

首先,我知道text/babel不适用于生产,但我发现它对开发非常有用,因为当我更改我的.jsx文件时django的开发网络服务器将重新加载,而无需我执行任何操作(即在每次更改后将JSX编译为JS)。我无法控制构建环境(例如django),因为这是我未开发的大型系统的小插件。问题是这样的:$(function(){console.log(mything);}mything在main.jsx中,简单如下:varmything="hello";如果main.jsx是javascript(并且相应地更改了脚本标签的类型)那么这将工作得很好。但是作为text/babel,它不会工作,因为myt

javascript - 如何使用 Babel 正确加载 .eot 和 .woff 文件?

尝试运行我的项目并出现以下错误(您可能需要适当的加载程序来处理此文件类型。)对于.eot、.woff、.ttf和.svg文件:ERRORin./src/styles/fonts/nm/icons/nm-icons.svg?aaf8685e87a6901c76c52d0018389547Moduleparsefailed:C:\BaseProject\src\styles\fonts\nm\icons\nm-icons.svg?aaf8685e87a6901c76c52d0018389547Unexpectedtoken(1:0)Youmayneedanappropriateloader

javascript - 在 Sublime Text 3 上使用 babel-eslint 时 Linting 不起作用

我正在尝试让babel-eslint在Sublime3上工作。我已经安装了:在npm上全局使用eslint和babel-eslintSublime上的SublimeLinter包Sublime上的SublimeLinter-contrib-eslint包此外,我还添加了:"syntax_map":{..."JavaScript(Babel)":"javascript"}到我的SublimeLinter.sublime-settings文件。当我在我的.eslintrc文件上使用"parser":"espree"运行linter时,它工作正常。但是当我将解析器更改为babel-eslin

javascript - Jest 模拟实现不适用于 require ('' )

我想测试一个使用第3个库获取数据的JS,所以我使用jestmock该实现。当我在测试中直接调用它时它正在工作。但是,在源代码中使用时它不起作用。这是代码//Sourceimplementationvarreference=require('./reference');module.exports={getResult:function(){returnreference.result();}};//Testcodejest.dontMock('./foo');jest.dontMock('console');describe('descirbe',function(){varfoo=r

javascript - Babel [karma-babel-preprocessor] 不为 Karma 测试转换 ES6->ES5

我们已经安装了karma,它使用mocha和chai进行测试。我们正在尝试使用karma-babel-preprocessor将babel直接集成到karma中,以将我们的ES6文件转换为ES5以运行。单独使用mocha与babel一起工作,即mocha测试命令,但我们尝试使用karma而不是它不起作用。karma.conf.js片段:frameworks:['mocha','chai'],//preprocessmatchingfilesbeforeservingthemtothebrowser//availablepreprocessors:https://npmjs.org/br

javascript - 我如何测试一个 Jest console.log

我正在使用create-react-app并尝试编写一个jest测试来检查console.log的输出。我要测试的功能是:exportconstlog=logMsg=>console.log(logMsg);我的测试是:it('console.logthetext"hello"',()=>{console.log=jest.fn('hello');expect(logMsg).toBe('hello');});这是我的错误FAILsrc/utils/general.test.js●console.logthetexthelloexpect(received).toBe(expected

javascript - 引用错误 : You are trying to `import` a file after the Jest environment has been torn down

我有一个组件使用来自ReactNative的Animated组件。我开始编写一个测试用例来模拟组件的onPress,它调用一个函数,其中包含Animated.timing和setState。运行jest工作正常,但测试永远不会停止运行,而且我之前编写的一个不相关的测试用例现在似乎从未通过(之前通过)。运行jest--watch,我得到这个错误:ReferenceError:Youaretryingto`import`afileaftertheJestenvironmenthasbeentorndown.atFunction.bezier(node_modules/react-nativ

javascript - 使用 jest 时如何设置 jsdom

我正在尝试从AVA迁移到Jest。在AVA中可以设置ava.setup,在其中设置jsdom环境。例如,创建DOM结构并执行必要的polyfill(localStorage)。我如何在Jest中完成它?目前,我在每个测试套件中都使用beforeEach,感觉这不是最佳解决方案。提前致谢! 最佳答案 好问题。Jest实际上附带了jsdom并且环境已经配置好了。您可以使用testEnvironment覆盖它setting.如果您需要设置环境的更多方面,您可以使用setupTestFrameworkScriptFilesetting指向在