Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
webpack仅绑定es6语法_Webpack_Ecmascript 6 - Fatal编程技术网

webpack仅绑定es6语法

webpack仅绑定es6语法,webpack,ecmascript-6,Webpack,Ecmascript 6,我正在写信。我不想把es6编译成es5。作为已经支持的浏览器 看来JS的小型化还不够成熟。但是很好。我只需要捆绑JS文件 我想使用对象静态方法功能 网页包版本为3.10.0 运行/node\u modules/.bin/webpack-d时出错 Hash: 84a44d953a9cf1e8e1f5 Version: webpack 3.10.0 Time: 257ms Asset Size Chunks Chunk Names .

我正在写信。我不想把es6编译成es5。作为已经支持的浏览器

看来JS的小型化还不够成熟。但是很好。我只需要捆绑JS文件

我想使用
对象静态方法
功能

网页包版本为3.10.0

运行
/node\u modules/.bin/webpack-d
时出错

Hash: 84a44d953a9cf1e8e1f5
Version: webpack 3.10.0
Time: 257ms
                Asset     Size  Chunks             Chunk Names
./../public/bundle.js  3.53 kB       0  [emitted]  main
   [0] ./src/App.jsx 636 bytes {0} [built] [failed] [1 error]

ERROR in ./src/App.jsx
Module build failed: SyntaxError: Unexpected token (7:8)

   5 | class App extends React.Component {
   6 | 
>  7 |   state = {
     |         ^
   8 |     name: "React"
   9 |   }
  10 | 
代码如下:

import React from 'react'
import ReactDOM from 'react-dom'

class App extends React.Component {

  state = {
    name: "React"
  }

  render(){
    return(
      <div>Hello, I'm {this.state.name}</div>
    )
  }
}

ReactDOM.render(<App />, document.getElementById("main"))
这是否意味着Webpack3.0还不支持es6?还是我错过了什么

谢谢你的时间

更新:

根据@Xlee,webpack.config.js应该是:

...
  module: {
    loaders: [
      {
        test: /\.jsx?$/,
        loader: 'babel-loader',
        query: {
          plugins: ['transform-class-properties'],
          presets: ['react'],
        }
      }
    ]
  }
...

您应该在构造函数中传递您的状态:

class App extends React.Component {
    constructor(props) {
        super(props);
        this.state = {
            name: "React"
        }
    }
}
我想使用对象静态方法功能

实际上,你想使用的功能不是ES6,它被称为

只需在npm安装中删除一个新的babel插件——保存dev babel插件转换类属性,并相应地更新babelrc(推荐)/webpack(babel loader)


详情如下:

谢谢!这帮了大忙。ES7已经发布两年了。类字段是一个建议。感谢您的更正:]
class App extends React.Component {
    constructor(props) {
        super(props);
        this.state = {
            name: "React"
        }
    }
}