Webpack,React,JSX,Babel-意外令牌<

斯蒂芬·拉斯特(Stephen Last)

这就是我使用ExpressJS所拥有的:

|-- app
|   |-- index.js
|-- node_modules
|   |-- babel-core
|   |-- babel-loader
|   |-- babel-preset-react
|   |-- express
|   |-- react
|   |-- react-dom
|   |-- webpack
|-- public
|   |-- js
|   |   |-- app.js
|   |-- index.html
|-- .babelrc
|-- index.js
|-- package.json
|-- webpack.config.js

/webpack.config.js

module.exports = {
    entry: [
        './app/index.js'
    ],
    module: {
        loaders: [{
            test: /\.js$/,
            include: __dirname + '/app',
            loader: "babel-loader",
            query: {
                presets:['react']
            }
        }]
    },
    output: {
        filename: "app.js",
        path: __dirname + '/public/js'
    }
};

/app/index.js

var React = require("react");
var ReactDOM = require("react-dom");
var People = React.createClass({
    ...
});
ReactDOM.render(<People />, document.getElementById('app'));

/.babelrc

{
  "presets": [
    "react"
  ]
}

当我运行webpack时,我得到:

模块解析失败:/app/index.js意外的令牌<您可能需要适当的加载器来处理此文件类型。

当我替换<People />React.createElement(People, {})它就很好了。

我有babel-preset-react模块。我有presets:['react']babel-loader加载器。我有.babelrc文件。

为什么webpack / babel无法解析<People />JSX ..?

斯蒂芬·拉斯特(Stephen Last)

原来这是我的问题include我有:

include: __dirname + '/app'

我现在正在使用path

include: path.join(__dirname, '/app')

哪个有效!我在Windows上,不知道这有什么不同。我想path从现在开始我将开始常规使用

对于webpack来说,像这样的错误会很好Can't find include folder/files

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章