webpack으로 프로젝트를 빌드하고이 webpack 구성에 반응하려고합니다.
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: [
'babel-polyfill',
'./app/less/main.less',
'./app/main.js',
'webpack-dev-server/client?http://localhost:8080'
],
output: {
publicPath: '/',
filename: 'dist/main.js'
},
debug: true,
devtool: 'source-map',
module: {
loaders: [
{
test: /\.js$/,
include: path.join(__dirname, 'app'),
loader: 'babel-loader',
query: {
presets: ['react', 'es2015']
}
},
{
test: /\.less$/,
loader: "style!css!autoprefixer!less"
},
]
}
};
필요한 pm 모듈도 있고 webpack이 설치되어 있다고 확신하지만 webpack을 실행하면 다음과 같은 결과가 나타납니다.
Module build failed: ReferenceError: [BABEL] /Users/me/foo/app/main.js: Unknown option: foo/node_modules/react/react.js.Children
어떤 아이디어?
답변
설치하는 것을 잊어 버려 죄송합니다 babel-preset-react
.
$ npm install babel-preset-react --save-dev
답변
내 프로젝트에서 더 이상 사용하지 않는 오래된 npm 모듈을 제거한 후 오류가 발생했다고 추가하고 싶었습니다 . 어디서도 사용하지 않았기 때문에 이상했던 것은 무엇입니까? 어디에서 사용되지 않는 것을 제거하면 오류가 발생할 수 있습니까?
그 모듈 하위 의존성 중 하나에 babel-preset-react가 있다는 것이 밝혀졌습니다. 이것은 제가 시작했을 때 제 프로젝트에 설치하는 것을 놓쳤습니다. 따라서 해당 패키지를 제거하면 중요한 babel-preset-react도 제거되었습니다!
1 년 넘게 다른 패키지의 하위 종속성 덕분에 내 반응 앱을 컴파일 할 수있었습니다.
예, babel-preset-react를 설치하면 문제가 해결되었습니다.