Error: Missing class properties transform

匿名 (未验证) 提交于 2019-12-03 03:08:02

问题:

Error: Missing class properties transform

Test.js:

export class Test extends Component {   constructor (props) {     super(props)   }    static contextTypes = {     router: React.PropTypes.object.isRequired   } 

.babelrc:

{   "presets": ["es2015", "react", "stage-0"],   "plugins": ["transform-class-properties"] } 

package.json:

"babel-core": "^6.5.1", "babel-eslint": "^4.1.8", "babel-loader": "^6.2.2", "babel-plugin-react-transform": "^2.0.0", "babel-plugin-transform-class-properties": "^6.5.2", "babel-preset-es2015": "^6.5.0", "babel-preset-react": "^6.5.0", "babel-preset-stage-0": "^6.5.0", "babel-register": "^6.5.2", 

I have scoured the web and all fixes revolve around: Upgrading to babel6, switching the order of "stage-0" to be after "es2015". All of which I have done.

回答1:

OK, finally figured this out, in my webpack.config.js I had:

module: {     loaders: [       {         test: /\.js?$/,         exclude: /(node_modules|bower_components)/,         loaders: [           'react-hot',           'babel?presets[]=react,presets[]=es2015,presets[]=stage-0'         ]       }     ]   } 

'babel?presets[]=stage-0,presets[]=react,presets[]=es2015'

Has to be treated in the same way as .babelrc, switched stage-0 to be after es2015 and it compiles perfectly.



回答2:

I had this error because I was using stage-3 instead of stage-0.



回答3:

@speak is right, but you need to change the order

loaders: [   'react-hot',   'babel?presets[]=react,presets[]=es2015,presets[]=stage-0' ]


回答4:

I also meet this error because of the using of env presets: "presets": [ "react", "es2015", "stage-0", ["env", { "modules": false }]], and after I remove the env presets, it works well



回答5:

I met the same problem using koa-react-view. Get inspired by these answers and finally fixed it with the following code in the koa server.js:

const register = require('babel-register');  register({     presets: ['es2015', 'react', 'stage-0'],     extensions: ['.jsx'] });


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!