Pentru a oferi un mic context al problemei mele, iată configurația mea locală:
Vagabond 2.2.16
VirtualBox 6.1.26
Ubuntu 20.04 LTS
npm v7.20.6
nodul v16.6.6
La început, mi-a fost foarte greu să instalez webpack-cli, ceea ce mi-a dat această eroare:
npm ERR! cod EPROTO
npm ERR! syscall symlink
npm ERR! cale ../ghinda/bin/ghinda
npm ERR! dest /vagrant/my_project/frontend/node_modules/.bin/acorn
npm ERR! eroare -71
npm ERR! EPROTO: eroare de protocol, link simbolic „../acorn/bin/acorn” -> „/vagrant/my_project/frontend/node_modules/.bin/acorn”
npm ERR! Un jurnal complet al acestei rulări poate fi găsit în:
npm ERR! /root/.npm/_logs/2021-08-16T05_40_20_295Z-debug.log
Până când l-am instalat cu succes cu următoarele comenzi:
sudo npm install -g save-dev webpack-cli
Alergare sudo webpack-cli
mi-a dat si asta:
active după stare 0 octeți [în cache] 1 activ
AVERTISMENT în configurare
Opțiunea „mod” nu a fost setată, pachetul web va reveni la „producție” pentru această valoare.
Setați opțiunea „mod” la „dezvoltare” sau „producție” pentru a activa setările implicite pentru fiecare
mediu inconjurator.
De asemenea, îl puteți seta la „niciunul” pentru a dezactiva orice comportament implicit. Aflați mai multe: hts://webpack.js.org/configuration/mode/
EROARE în principal
Modulul nu a fost găsit: Eroare: Nu se poate rezolva „./src” în „/vagrant/my_project/frontend”
rezolvați „./src” în „/vagrant/my_project/frontend”
folosind fișierul de descriere: /vagrant/my_project/frontend/package.json (cale relativă: .)
Câmpul „browser” nu conține o configurație de alias validă
folosind fișierul de descriere: /vagrant/my_project/frontend/package.json (cale relativă: ./src)
nici o extensie
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src nu este un fișier
.js
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src.js nu există
.json
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src.json nu există
.wasm
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src.wasm nu există
ca director
directorul existent /vagrant/my_project/frontend/src
folosind fișierul de descriere: /vagrant/my_project/frontend/package.on (cale relativă: ./src)
folosind calea: /vagrant/my_project/frontend/src/index
folosind fișierul de descriere: /vagrant/my_project/frontend/packe.json (cale relativă: ./src/index)
nici o extensie
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src/index nu există
.js
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src/index.js nu există
.json
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src/index.json nu există
.wasm
Câmpul „browser” nu conține o configurație de alias validă
/vagrant/my_project/frontend/src/index.wasm nu există
webpack 5.50.0 compilat cu 1 eroare și 1 avertizare în 150 ms
Dar l-am ignorat și am continuat să instalez alte pachete, cum ar fi babel și reaction using npm install -g
.
Acum, după ce mi-am configurat proiectul și am rulat această comandă:
sudo npm run dev
Am primit următoarea eroare:
> [email protected] dev
> webpack --mode development --watch
[webpack-cli] Nu s-a încărcat configurația „/vagrant/my_project/frontend/webpack.config.js”
[webpack-cli] Eroare: Modulul „webpack” nu poate fi găsit
Necesită stiva:
- /vagrant/my_project/frontend/webpack.config.js
- /usr/lib/node_modules/webpack-cli/lib/webpack-cli.js
- /usr/lib/node_modules/webpack-cli/lib/bootstrap.js
- /usr/lib/node_modules/webpack-cli/bin/cli.js
- /usr/lib/node_modules/webpack/bin/webpack.js
la Function.Module._resolveFilename (nod:intern/modules/cjs/loader:933:15)
la Function.Module._load (nod:internal/modules/cjs/loader:778:27)
la Module.require (nod:internal/modules/cjs/loader:1005:19)
la require (/usr/lib/node_modules/webpack-cli/node_modules/v8-compile-cache/v8-compile-cache.js:159:20)
la Object.<anonim> (/vagrant/my_project/frontend/webpack.config.js:2:17)
la Module._compile (/usr/lib/node_modules/webpack-cli/node_modules/v8-compile-cache/v8-compile-cache.js:192:30)
la Object.Module._extensions..js (nod:internal/modules/cjs/loader:1153:10)
la Module.load (nod:internal/modules/cjs/loader:981:32)
la Function.Module._load (nod:internal/modules/cjs/loader:822:12)
la Module.require (nod:internal/modules/cjs/loader:1005:19) {
cod: „MODULE_NOT_FOUND”,
requireStack: [
„/vagrant/my_project/frontend/webpack.config.js”,
„/usr/lib/node_modules/webpack-cli/lib/webpack-cli.js”,
„/usr/lib/node_modules/webpack-cli/lib/bootstrap.js”,
„/usr/lib/node_modules/webpack-cli/bin/cli.js”,
„/usr/lib/node_modules/webpack/bin/webpack.js”
]
}
Apropo, iată conținutul meu webpack.config.js
fişier:
const path = require("cale");
const webpack = require("webpack");
module.exports = {
intrare: „./src/index.js”,
ieșire: {
cale: path.resolve(__dirname, "./static/frontend"),
nume de fișier: „[nume].js”,
},
modul: {
reguli: [
{
test: /\.js$/,
exclude: /node_modules/,
utilizare: {
încărcător: "babel-loader",
},
},
],
},
optimizare: {
minimiza: adevărat,
},
pluginuri: [
pachet web nou.DefinePlugin({
„process.env”: {
NODE_ENV: JSON.stringify(„producție”),
},
}),
],
};
Cred că asta are legătură cu legăturile simbolice, dar nu vreau să petrec ore întregi încercând să depanez ceva ce nu înțeleg. Sper doar că cineva poate găsi și răspunde la asta.