使用 webpack 模块解析失败并做出反应,即使使用 babel-loader
Module parse failed with webpack and react, even using babel-loader
我正在尝试将 webpack 与 React 结合使用,但出现此错误:
./app/main.js 中的错误
Module parse failed: /Users/me/app/main.js Line 2: Unexpected token
You may need an appropriate loader to handle this file type.
| //npm
| import React from 'react';
这是感兴趣的 webpack 配置部分:
test: /\.jsx?$/,
include: path.join(__dirname, 'src'),
loader: 'babel-loader',
query: {
presets: ['es2015', 'react']
和 package.json:
"devDependencies": {
"autoprefixer-loader": "^3.1.0",
"babel-core": "^6.1.20",
"babel-loader": "^6.1.0",
"babel-preset-es2015": "^6.1.18",
"babel-preset-react": "^6.1.18",
"jest": "^0.1.40",
"webpack": "^1.12.4",
"webpack-dev-server": "^1.12.1",
"css-loader": "^0.22.0",
"style-loader": "^0.13.0"
},
"dependencies": {
"babel-polyfill": "^6.1.19",
"history": "^1.17.0",
"react": "^0.14.2",
"react-dom": "^0.14.2",
"react-mdl": "^1.0.4",
"react-router": "^1.0.2"
}
loaders: [{
test: /\.jsx?$/,
loader: 'babel',
query: {
presets: ['es2015', 'react']
}
}]
这是我的加载器配置。
您的配置中的一大不同是加载程序的命名。尝试 'babel' 而不是 'babel-loader'。
下一个可能的错误可能是您的版本。更新 babel-loader(至 6.2.0)。
查看报错信息中的路径
Module parse failed: /Users/me/app/main.js Line 2: Unexpected token
似乎模块不在 src
文件夹中。但是,您明确指定只有 path.join(__dirname, 'src')
内的模块应该通过 babel 加载程序。
调整 include
使其也包括 main.js
。
我正在尝试将 webpack 与 React 结合使用,但出现此错误:
./app/main.js 中的错误
Module parse failed: /Users/me/app/main.js Line 2: Unexpected token
You may need an appropriate loader to handle this file type.
| //npm
| import React from 'react';
这是感兴趣的 webpack 配置部分:
test: /\.jsx?$/,
include: path.join(__dirname, 'src'),
loader: 'babel-loader',
query: {
presets: ['es2015', 'react']
和 package.json:
"devDependencies": {
"autoprefixer-loader": "^3.1.0",
"babel-core": "^6.1.20",
"babel-loader": "^6.1.0",
"babel-preset-es2015": "^6.1.18",
"babel-preset-react": "^6.1.18",
"jest": "^0.1.40",
"webpack": "^1.12.4",
"webpack-dev-server": "^1.12.1",
"css-loader": "^0.22.0",
"style-loader": "^0.13.0"
},
"dependencies": {
"babel-polyfill": "^6.1.19",
"history": "^1.17.0",
"react": "^0.14.2",
"react-dom": "^0.14.2",
"react-mdl": "^1.0.4",
"react-router": "^1.0.2"
}
loaders: [{
test: /\.jsx?$/,
loader: 'babel',
query: {
presets: ['es2015', 'react']
}
}]
这是我的加载器配置。 您的配置中的一大不同是加载程序的命名。尝试 'babel' 而不是 'babel-loader'。 下一个可能的错误可能是您的版本。更新 babel-loader(至 6.2.0)。
查看报错信息中的路径
Module parse failed: /Users/me/app/main.js Line 2: Unexpected token
似乎模块不在 src
文件夹中。但是,您明确指定只有 path.join(__dirname, 'src')
内的模块应该通过 babel 加载程序。
调整 include
使其也包括 main.js
。