#javascript #node.js #webpack
#javascript #node.js #webpack
Вопрос:
Я хочу сохранить серверный проект, который я разработал с помощью Node JS, как сборку и сохранить его как 1 HTML-файл на моем сервере как Webpack. Я разрабатываю с помощью nodemon, никаких проблем, но, согласно моей конфигурации, «СБОРКА под УПРАВЛЕНИЕМ NPM» не работает. Может вызвать проблему?
Возвращается 30 различных ошибок, это одна. Все они пишут другую информацию о библиотеке, подобную этой. «Модуль не найден: ошибка: не удается разрешить ‘zlib’ в ‘/ Users / ugurcanalyuz / Projects / Ekartex / ekartex_backend / node_modules / body-parser / lib'»
webpack.config.js
const path = require("path");
module.exports = {
entry: './server.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
devServer: {
contentBase: './dist',
compress: true,
port: 3200
},
module: {
rules: [
{
test: /.js$/,
exclude: /node_modules/,
loader: "babel-loader"
}
]
}
}
server.js
const express = require("express");
const app = express();
const users = require("./src/routers/users");
app.use(users);
app.listen(3200, () => {
console.log("Sistem açık");
})
package.json
{
"name": "exxx",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"start": "nodemon server.js",
"build": "webpack --mode production"
},
"repository": {
"type": "git"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.12.10",
"@babel/preset-env": "^7.12.11",
"babel-loader": "^8.2.2",
"webpack": "^5.11.1",
"webpack-cli": "^4.3.1",
"webpack-dev-server": "^3.11.1"
},
"dependencies": {
"express": "^4.17.1"
}
}
Комментарии:
1. Похоже, некоторые пакеты отсутствуют. Не могли бы вы кратко объяснить, как вы настраиваете свой проект?
2. @YannickEich При настройке проекта я сначала использовал команду «инициализация npm —yes». Затем я установил связанные библиотеки Webpack и добавил «express». Это такой пустой проект.
3. Какие команды вы использовали для установки всех необходимых пакетов?
4. Я установил плагины «—save» и «express и webpack». Среди модулей, которые выходят из строя, есть «fs, zlib, path, crypto, buffer». Я также установил их, количество ошибок упало до 14, но я все еще получаю те же ошибки. Ошибка «Не удается разрешить» для модулей, которые я установил. @YannickEich
5. Не могли бы вы настроить новый проект, который вы пытаетесь создать напрямую?
Ответ №1:
Опция devServer предназначена для клиентской части. для node.js вам нужно добавить
target: "node",
а также для повышения производительности
const nodeWebExternals = require("webpack-node-externals");
// add this property to webpack config object
externals: [nodeWebExternals()],
Ответ №2:
Просто запустите следующую команду в командной строке (/ terminal):
npm i zlib
Комментарии:
1. Я нигде не использовал zlib, но я сделал то, что сказал, что 3 ошибки отсутствуют. Должен ли я это делать? В результате я просто добавил «express» и «webpack» в пустой проект.