Я следую учебному пособию по Pluralsight, посвященному ручной настройке Babel и Webpack в приложении React. Я не новичок в React, но я новичок в ручной настройке Babel и Webpack. Я следовал этому руководству, но у меня появляется ошибка cannot GET /
при запуске приложения через npm run dev
. Я также заметил, что после запуска npm run build
Webpack не генерирует автоматически папку dist
, и я считаю, что это моя проблема.
Вот мой файл webpack.config.js
:
// import path from 'path';
const path = require("path");
// export default {
module.exports = {
mode: 'development',
entry: path.resolve(__dirname, 'src','app'),
output: {
path: path.resolve(__dirname,'dist'),
filename: 'bundle.js',
publicPath: '/',
},
resolve: {
extensions: ['.js','.jsx']
},
devServer: {
historyApiFallback: true
},
module: {
rules: [{
test: /\.jsx?/,
loader:'babel-loader'
}]
}
}
Вот мой babel.rc
файл (я не думаю, что это проблема, но я все равно его включу):
{
"presets": [
["@babel/preset-env",{
"targets":{
"node":"current"
}
}],
"@babel/preset-react"
]
}
Вот мой package.json
файл:
{
"name": "react-fullstack",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "webpack",
"dev": "webpack-dev-server --open"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.0.0",
"@babel/node": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-react": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-loader": "^8.0.2",
"webpack": "^4.17.2",
"webpack-cli": "^3.1.2",
"webpack-dev-server": "^3.1.7"
}
}
Почему я получаю ошибку cannot GET /
? Это связано с отсутствующей папкой dist
? Как я могу исправить это и заставить мое приложение связываться и работать правильно?
Я полагаю, возможно, есть проблема с путем к файлу в части output.path конфигурации Webpack или проблема с fileName
.