Я унаследовал проект, который не был затронут в течение нескольких лет. Таким образом, мой первый шаг состоял в том, чтобы обновить все зависимости. Я был близок к тому, чтобы заставить его работать, но я застрял на этой одной ошибке:
Error: Plugin/Preset files are not allowed to export objects, only functions
Я попытался удалить правила из моего webpack.config.js
файла. Это не сильно помогло. Проект изначально ссылался на «es2015», и я обновил эту информацию, чтобы использовать «es2016».
вот мой package.json
файл
{
"name": "quant-engine",
"version": "1.0.0",
"description": "",
"main": "index.js",
"private": true,
"scripts": {
"start": "webpack-dev-server --progress --inline --port 8112",
"build": "webpack",
"storybook": "start-storybook -p 6006",
"build-storybook": "build-storybook"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"acorn": "^6.1.1",
"babel-core": "^6.17.0",
"babel-loader": "^8.0.5",
"babel-preset-es2016": "^6.24.1",
"babel-preset-react": "^6.5.0",
"chai": "^4.2.0",
"css-loader": "^2.1.1",
"file-loader": "^3.0.1",
"font-awesome": "^4.7.0",
"moment": "^2.18.1",
"prettier": "^1.17.0",
"prop-types": "^15.7.2",
"react": "^16.8.6",
"react-bootstrap": "^1.0.0-beta.8",
"react-currency-input": "^1.2.6",
"react-date-picker": "^7.5.1",
"react-dom": "^16.8.6",
"react-fontawesome": "^1.6.1",
"style-loader": "^0.23.1",
"webpack": "^4.30.0",
"webpack-dev-server": "^3.3.1"
},
"devDependencies": {
"@storybook/addon-actions": "^5.0.11",
"@storybook/addon-links": "^5.0.11",
"@storybook/addons": "^5.0.11",
"@storybook/react": "^5.0.11",
"webpack-cli": "^3.3.2"
}
}
и вот мой webpack.config.js
файл
module.exports = {
entry: './src/app.js',
},
output: {
path: __dirname,
filename: 'bundle.js'
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: 'babel-loader',
query: { presets: [ 'es2016', 'react' ] }
},
{
test: /\.(png|jpg|gif)$/,
loader: 'file-loader',
exclude: /node_modules/,
options: {}
},
{
test: /\.css$/,
loader: 'style-loader!css-loader'
}
]
}
};
Я не знаком с Бабелем. Из того, что я могу найти , другие люди опубликовали эту проблему безрезультатно (но их вопросы так и не были полностью объяснены).
Я бы хотел, чтобы все зависимости проекта были как можно более актуальными. Я не хочу, чтобы понизил как можно больше.
Thnx
edit : построить вывод ниже. У меня нет .babelrc
файла.
# npm start
> quant-engine@1.0.0 start C:\src\projects\OptionAnalyzer\web
> webpack-dev-server --progress --inline --port 8112
10% building 1/1 modules 0 activei 「wds」: Project is running at http://localhost:8112/
i 「wds」: webpack output is served from /
× 「wdm」: Hash: c72e7c421021f65f90e2
Version: webpack 4.30.0
Time: 1030ms
Built at: 2019-05-07 14:40:23
Asset Size Chunks Chunk Names
bundle.js 349 KiB main [emitted] main
Entrypoint main = bundle.js
[0] multi (webpack)-dev-server/client?http://localhost:8112 ./src/app.js 40 bytes {main} [built]
[./node_modules/ansi-html/index.js] 4.16 KiB {main} [built]
[./node_modules/ansi-regex/index.js] 135 bytes {main} [built]
[./node_modules/html-entities/index.js] 231 bytes {main} [built]
[./node_modules/loglevel/lib/loglevel.js] 7.68 KiB {main} [built]
[./node_modules/node-libs-browser/node_modules/events/events.js] 13.3 KiB {main} [built]
[./node_modules/querystring-es3/index.js] 127 bytes {main} [built]
[./node_modules/strip-ansi/index.js] 161 bytes {main} [built]
[./node_modules/url/url.js] 22.8 KiB {main} [built]
[./node_modules/webpack-dev-server/client/index.js?http://localhost:8112] (webpack)-dev-server/client?http://localhost:8112 8.26 KiB {main} [built]
[./node_modules/webpack-dev-server/client/overlay.js] (webpack)-dev-server/client/overlay.js 3.59 KiB {main} [built]
[./node_modules/webpack-dev-server/client/socket.js] (webpack)-dev-server/client/socket.js 1.05 KiB {main} [built]
[./node_modules/webpack/hot sync ^\.\/log$] (webpack)/hot sync nonrecursive ^\.\/log$ 170 bytes {main} [built]
[./node_modules/webpack/hot/emitter.js] (webpack)/hot/emitter.js 75 bytes {main} [built]
[./src/app.js] 1.44 KiB {main} [built] [failed] [1 error]
+ 11 hidden modules
ERROR in ./src/app.js
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Plugin/Preset files are not allowed to export objects, only functions. In C:\src\projects\OptionAnalyzer\web\node_modules\babel-preset-es2016\lib\index.js
at createDescriptor (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:178:11)
at items.map (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:109:50)
at Array.map (<anonymous>)
at createDescriptors (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:109:29)
at createPresetDescriptors (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:101:10)
at passPerPreset (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:58:96)
at cachedFunction (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\caching.js:33:19)
at presets.presets (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-descriptors.js:29:84)
at mergeChainOpts (C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-chain.js:320:26)
at C:\src\projects\OptionAnalyzer\web\node_modules\@babel\core\lib\config\config-chain.js:283:7
i 「wdm」: Failed to compile.