草庐IT

babel-jest

全部标签

javascript - 在 "Actions must be plain objects. Use custom middleware for async actions."中使用 Jest 模拟结果

我有几个Redux-Thunk风格的函数,可以在一个文件中分派(dispatch)其他操作。其中一个Action将另一个作为其逻辑的一部分进行分派(dispatch)。它看起来类似于:exportconstfunctionToMock=()=>async(dispatch)=>{awaitdispatch({type:'abasicaction'});};exportconstfunctionToTest=()=>async(dispatch)=>{dispatch(functionToMock());};在我实际遇到的情况下,这些函数都涉及更多,并且每个都分派(dispatch)多个

javascript - babel-node 无法在 node_modules 中要求 jsx 文件

我知道babel-node忽略node_modules默认情况下,所以我运行了三种不同的方式来覆盖它,但都失败了:跑了babel-nodeapp.js与.babelrc:{"presets":["es2015","react"],"only":["app","node_modules/react-components"]}结果:SyntaxError:Unexpectedtoken对于所需的jsxNode模块跑了babel-nodeapp.js与.babelrc:{"presets":["es2015","react"],"ignore":"node_modules\/(?!react

javascript - 使用 TypeScript 和 Babel gulp sourcemaps

我目前正在编写一个业余项目,在那里我可以了解有关TypeScript和ES6(使用babel)的更多信息。我想在我的TypeScript中使用ES6,所以我决定采用以下工作流程。Typescript(ES6)->Babel(ES6)->ES5现在我正在使用Gulp自动执行所有这些操作,但我很难让源映射正确生成。我应该提一下,这个样式是/r/typescript上的一个用户向我推荐的,所以我什至不确定它是否可行。无论如何这是我当前的gulp任务varserver=$.typescript.createProject('src/server/tsconfig.json');gulp.tas

javascript - 开 Jest + 火力地堡 : TypeError: Cannot read property 'defineProperties' of undefined

我目前正在做一个ReactNative项目,想使用FirebaseJSSDK。为了熟悉它的所有API,我想用Jest编写一些学习测试。这是我的测试:importFirebasefrom'firebase';describe('Firebase',function(){it('shouldwork',function() {expect(null).toBeNull()})});不幸的是我收到了这个错误:●测试套件运行失败TypeError:Cannotreadproperty'defineProperties'ofundefinedatnode_modules/firebase/app

javascript - 安装 Babel 以与 React 和 JSX 一起使用

我是React、Babel和JSX的新手。我正在尝试弄清楚如何安装Babel,以便它可以在浏览器中使用React和JSX“做正确的事”。但是,Babel的文档假定我已经了解整个NPM/Node+许多其他包管理器+框架生态系统,而我并不了解。对于只想使用Babel为React应用程序编译JSX的人,是否有任何文档?我想学习如何在我的机器上(而不是在托管站点上)执行此操作,但似乎那里的初学者文档为零。似乎这些部分的各种版本不再协同工作,所以我对我需要什么感到有点困惑。到目前为止,我已经下载了React16.2,并使用npm安装了Babelnpminstall--save-devbabel-

javascript - 使用 Webpack 和 Babel 的 ES6 动态导入

我一直在为我的ES6JS项目使用Webpack,并且在我开始使用动态导入之前一直运行良好。我的工作(router.js):import{navigo}from"Navigo";//routerimport{clients}from"Controllers/clients.js";constnavigo=newNavigo();navigo_router.on({'/clients':()=>{clients.init();}});但是我添加的页面/路由越多,模块头部堆积的导入就越多。这是一个相对较大的应用程序,我有很多页面/路由要添加,因此我需要动态加载它们以减少初始页面加载的大小。所

javascript - Jest/Enzyme 图像加载回调未运行

我有一个ImageLoader类组件,我正在尝试测试是否正在调用HTMLImageElement上的onload函数。重要的是要注意ImageLoader按预期工作,我只是无法运行测试。这是我的类组件的示例:exportdefaultclassImageLoaderextendsReact.Component{//OmittedforbrevitysetSrc=()=>{const{src}=this.props;if(src){this.tmpImg=newImage();//this.tmpImg.onloadisnevercalledthis.tmpImg.onload=()=>

javascript - NodeJS - Jest 单元测试 process.on 回调中的 setTimeout

我正在尝试在我的process.on('SIGTERM')回调中使用Jest对计时器进行单元测试,但它似乎从未被调用过。我正在使用jest.useFakeTimers()虽然它似乎在一定程度上模拟了setTimeout调用,但它并没有在setTimeout.mock中结束检查时对象。我的index.js文件:process.on('SIGTERM',()=>{console.log('GotSIGTERM');setTimeout(()=>{console.log('Timerwasrun');},300);});setTimeout(()=>{console.log('Timer2w

javascript - Jest 遇到了意外的 token

不确定为什么会在这条线上提示:constwrapper=shallow();/Users/leongaban/projects/match/bitcoin/src/components/bitcoinWidget.test.js:Unexpectedtoken(17:26)JestencounteredanunexpectedtokenThisusuallymeansthatyouaretryingtoimportafilewhichJestcannotparse,e.g.it'snotplainJavaScript.Bydefault,ifJestseesaBabelconfig,i

JavaScript - babel-preset-env 不为 IE11 转换箭头函数

我很难尝试配置Babel来转换IE11可以理解的代码,特别是箭头函数。使用我的配置运行npxwebpack--mode=development不会转换我代码中的箭头函数:在生成代码的eval()语句中,我可以看到所有实例都未转换。不同于thisquestion中引用的控制台输出,我没有提到“使用目标”或“使用预设”。我不知道这是否与使用npxwebpack而不是npmrunbuild有关。这是我的package.json的Babel部分:{//name,versionetc.snipped"devDependencies":{"@babel/core":"^7.1.2","@babel