UAL100
UAL100

Reputation: 21

Node JS Webpack Build Failed

I want to keep the Backend project I developed with Node JS as Build and keep it as 1 HTML file on my server as Webpack. I am developing with nodemon, no problem, but according to my configuration, the "NPM RUN BUILD" dwelling does not work. Could cause the problem?

30 different errors return, this is one. All of them write other library information like this. "Module not found: Error: Can't resolve 'zlib' in '/ 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"
  }
}

Upvotes: 0

Views: 2123

Answers (2)

Yilmaz
Yilmaz

Reputation: 49182

devServer option is for client-side. for node.js you need to add

 target: "node",

and also for better performance

 const nodeWebExternals = require("webpack-node-externals");
 // add this property to webpack config object
 externals: [nodeWebExternals()],

Upvotes: 1

Majid Ghafoorzade
Majid Ghafoorzade

Reputation: 488

Just run the following command, inside you command line (/terminal):

npm i zlib

Upvotes: 0

Related Questions