This commit is contained in:
gggaaallleee
2025-02-28 19:00:58 +08:00
committed by GitHub
parent cf0aaa1091
commit f7b2a57ca3
29 changed files with 7469 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
// 引入path包
const path = require('path')
require('dotenv').config();
const mode = process.env.NODE_ENV || 'development'
const nodeExternals = require('webpack-node-externals');
module.exports = {
target: 'node', // 指定构建目标为 Node.js
externals: [nodeExternals()], // 排除 node_modules
// 指定入口文件
entry: "./src/index.ts",
// 指定打包文件所在目录
output: {
path: path.resolve(__dirname, 'dist'),
// 打包后文件的名称
filename: "bundle.js"
},
resolve: {
extensions: ['.ts', '.tsx', '.js', '.json'],
fallback: {
"zlib": require.resolve("browserify-zlib"),
"querystring": require.resolve("querystring-es3"),
"path": require.resolve("path-browserify"),
"crypto": require.resolve("crypto-browserify"),
"stream": require.resolve("stream-browserify"),
"os": require.resolve("os-browserify/browser"),
"http": require.resolve("stream-http"),
"net": false,
"string_decoder": require.resolve("string_decoder/"),
"url": require.resolve("url/"),
"buffer": require.resolve("buffer/"),
"util": require.resolve("util/"),
// 新增 assert 的 fallback
"assert": require.resolve("assert/"),
// 处理新出现的 vm 警告
"vm": require.resolve("vm-browserify"),
"fs": false
}
},
// 指定webpack打包的时候要使用的模块
module: {
// 指定要价在的规则
rules: [
{
// test指定的是规则生效的文件,意思是用ts-loader来处理以ts为结尾的文件
test: /\.ts$/,
use: 'ts-loader',
exclude: /node_modules/
}
]
},
mode,
}