gpt4 book ai didi

javascript - 与 Webpack 捆绑后的模块功能无法识别

转载 作者:行者123 更新时间:2023-12-03 02:08:11 24 4
gpt4 key购买 nike

我正在尝试使用 webpack 将我的 node.js 项目捆绑到一个文件中,该文件将包含它需要的所有模块。
创建 bundle.js 文件后,我无法运行它,因为所需模块中的某些功能无法识别:
Server.js 文件中,我需要 'http' ,并使用 http.createServer() 函数。
当我运行该文件时,它显示: TypeError: r.createServer is not a function

如何正确地将项目与其所有模块捆绑在一起?

我的 Package.json 文件的相关部分:

  "dependencies": {
"lodash": "4.17.4"
},
"devDependencies": {
"babel-loader": "^7.1.4",
"eslint": "^4.19.1",
"jasmine": "^3.1.0",
"webpack": "^4.5.0",
"webpack-cli": "^2.0.14"
},
"scripts": {
"test": "npm run lint && jasmine",
"lint": "sh util/lintRunner.sh",
"fix": "sh util/lintFixer.sh",
"build": "webpack -p",
"clean": "rm -rf dist/"
}

我的webpack.comfig.js文件:

const path = require('path');

module.exports = {
entry: [
'./Server/Server.js',
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: ['babel-loader'],
},
],
},
node: {
fs: 'empty',
dns: 'empty'
}
};

最佳答案

您需要告诉 WebPack 您捆绑的 javascript 将在哪里运行;在本例中是在 Nodejs 环境中。

尝试将 target: 'node' 添加到您的配置中。

了解有关 target 属性的更多信息:https://webpack.js.org/concepts/targets/

关于javascript - 与 Webpack 捆绑后的模块功能无法识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49708978/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com