草庐IT

babel-plugin-react-intl

全部标签

javascript - 为什么在 ES6 react 类中需要绑定(bind)

在新的ReactES6类中,this需要按照此处所述进行绑定(bind):http://facebook.github.io/react/blog/2015/01/27/react-v0.13.0-beta-1.html#autobinding例如:classCounterextendsReact.Component{constructor(){super();this.tick=this.tick.bind(this);}tick(){...}...}对此的解释是因为它是默认行为,但是如果我创建一个ES6类,然后创建它的一个新实例,this将被绑定(bind)importReactf

javascript - `es2016` 预设的 Babel 是否实现了尾调用优化?

我使用以下示例来测试Babel和es2016预设的尾调用递归:'usestrict';try{functionr(n){if(n%5000===0)console.log(`reachedadepthof${n}`);r(n+1);}r(0);}catch(e){if(!(einstanceofRangeError))throwe;elseconsole.log('stackblown');}我的package.json文件是:{"name":"tail-call-optimization","version":"1.0.0","description":"","main":"inde

javascript - 为什么 ES6 代码和 ES5 代码用 Babel.js 编译后结果不一样?

ES6代码:letfoo='outer';functionbar(func=x=>foo){letfoo='inner';console.log(func());}bar();//outer结果是“外部”。Babel.js编译后的ES5代码:'usestrict';varfoo='outer';functionbar(){varfunc=arguments.length结果是“外部”。我不知道为什么他们有不同的结果。 最佳答案 这是一个buginBabel.复杂参数列表中的表达式应该看不到函数体中的声明,但是这里Babel生成的代码

javascript - 使用 React 使用随机生成的字符串进行服务器端渲染?

我第一次在我的React/Redux应用程序中尝试服务器端渲染。我现在遇到的一个问题是我需要初始状态有一个随机生成的字符串,然后将其作为Prop传递给我的主要App组件。这显然会导致问题,因为它会为客户端和服务器生成不同的字符串。我能做些什么来阻止这个问题的发生吗?有助于理解的基本结构:App.jsimportReactfrom'react';import{connect}from'react-redux';constApp=({randomStr})=>({randomStr});constmapStateToProps=(state)=>({...});constmapDispat

javascript - 与阿多尼斯 react

我正在尝试将React与AdonisJs集成以构建SPA。Adonis通过处理到SPA的路由Route.any('*',function*(request,response){yieldresponse.sendView('home')})我在app>Http>routes.js中完全做到了这一点然后我在资源>View中创建了一个home.njk作为我的应用程序的登录页面。现在,我有一个react文件,我在其中创建了一个页脚。我想用React-router处理页脚中的所有链接。React路由器处理url以导航到页面。但是,上面的代码(在Adonis中)表示任何url(*)都将呈现“ho

javascript - 如何在 Jest 中禁用 Babel 集成?

我有一个项目,它的代码同时针对浏览器和节点。它有用于浏览器代码的.babelrc文件。但是当我使用Jest运行节点代码测试时,它总是读取不需要的.babelrc文件。所以我可以以某种方式禁用它? 最佳答案 您需要为您的节点测试创建一个额外的Jest设置文件。在此文件中,将transform设置为一个空对象。要使用此文件,您需要使用指向您的节点jest设置的--config选项调用jest。 关于javascript-如何在Jest中禁用Babel集成?,我们在StackOverflow上

javascript - 路由、通用应用程序(Nodejs、React)、错误(0、_reactRouter.match)不是函数

我无法修复这个错误...我启动服务器,一切正常,因为我刷新localhost:3000然后它告诉我一个错误:TypeError:(0,_reactRouter.match)不是函数我已经安装了“react-router”:“^4.0.0”importExpressfrom'express';import{RouterContext,match}from'react-router';import{renderToString}from'react-dom/server';importReactfrom'react';importroutesfrom'./routes.js'varapp=

javascript - 与 React Native 开 Jest 得到问题

我在尝试运行测试用例代码时遇到错误。我正在使用reactnativewithjest。在升级0.40之前一切正常。现在是0.42,我所有的测试用例都停止工作并在错误之后出现错误。({"Object.":function(module,exports,require,__dirname,__filename,global,jest){importReact,{Component,Children,PropTypes}from'react';^^^^^^SyntaxError:UnexpectedtokenimportattransformAndBuildScript(node_modul

javascript - React JS 在状态中维护数组

我一直在使用Reactstate来维护一些数据。对于整数和字符串,它运行良好,但不幸的是,数组不起作用。在我的组件构造函数中,我有constructor(props){super(props);this.state={terms:5,myArray:[]}然后,我尝试在componentDidUpdate中维护它componentDidUpdate(){this.state={terms:this.state.terms,myArray:this.state.myArray}但是myArray:this.state.myArray不工作。但是terms:this.state.terms

javascript - 当 process.env.NODE_ENV= ='production' 时,使用 babel-polyfill 在 IE11.0.9600 中未定义 fetch 和 Headers

当process.env.NODE_ENV=='development'-没问题!但是我们的生产构建在IE11(11.0.9600)中失败了。在chrome55中一切正常。开发依赖:...babel-core:"6.22.0",babel-eslint:"^7.0.0",babel-loader:"^6.2.5",babel-preset-env:"^1.5.2",babel-preset-es2015:"^6.16.0",babel-preset-es2016:"^6.22.0",babel-preset-es2017:"^6.16.0",babel-preset-react:"^6