javascript - 当为 webpack 输入命令“npm run dev”时,它会创建一个以 NaN 结尾的文件夹
问题描述
我正在 Lynda.com “learning-full-stack-javascript-development-mongodb-node-and-react” 上一门课程,当我使用命令“npm run dev”在“public”中创建一个 bundle.js 文件时" 文件夹,它会创建一个文件夹 "publicNaN" 并将文件 bundle.js 放入其中。我希望它位于“公共”文件夹中。
这是 webpack.config.js 文件:
const path = require("path");
const BUILD_PATH = path.join(__dirname, "./public");
// See https://github.com/Microsoft/vscode/blob/master/extensions/shared.webpack.config.js
module.exports = {
mode: "production",
target: "node",
node: {
__dirname: false
},
entry: {
extension: ["./src/index.js"]
},
output: {
path: BUILD_PATH + + '/public',
filename: "bundle.js",
libraryTarget: "commonjs",
},
resolve: {
extensions: [".ts", ".js"]
},
externals: {
"vscode": "commonjs vscode"
},
module: {
rules: [
{
test: /\.ts$/,
use: [
{
loader: "ts-loader"
}
],
exclude: /node_modules/
},
{
test: /\.mjs$/,
type: "javascript/auto",
use: []
}
]
},
stats: {
children: false,
modules: false
}
};
解决方案
您已经在此处将 BUILD_PATH 设置为 /public:
const BUILD_PATH = path.join(__dirname, "./public");
因此无需将其添加到输出对象中。两个 + 号也尝试转换为数字。这就是你最后得到 NaN 的原因。
所以将输出对象更改为:
output: {
path: BUILD_PATH,
filename: "bundle.js",
libraryTarget: "commonjs",
},
推荐阅读
- amazon-web-services - 配置 confluence 调用 postfix setup 发送邮件
- google-chrome-extension - 如何使用 DevTools 或其他调试器调试 chrome 扩展?
- python-3.x - Docker 和 Plotly
- mongodb - MongoDB $group 操作 - 内存使用优化
- angular - 更改 firebase-messaging-sw.js 位置
- python - 如何将我的 django 路径设置为 http://127.0.0.1:8000/myproject/admin
- erlang - mnesia:read 在 mnesia 中使用表碎片时返回空,但有记录
- scala - 在播放控制器中注入模拟服务对象的依赖项,同时对其进行单元测试
- artifactory - JFrog Artifactory 中的本地仓库、远程仓库和虚拟仓库有什么区别
- javascript - 如何在 Javascript 中将“ArrayBuffer”转换为“SharedArrayBuffer”?