打包配置
🚧
该功能将在v2版本中移除,推荐使用基于SWC的打包工具,例如Parcel 2 (opens in a new tab)、Turbopack (opens in a new tab)、rspack (opens in a new tab)或fe-farm (opens in a new tab)。
请改用上述任一打包工具。
SWC 能够将多个 JavaScript 或 TypeScript 文件打包成一个。
此功能目前命名为 spack,但将在 v2 中更名为 swcpack。spack.config.js 将被弃用,改为 swcpack.config.js。
查看 打包的基本示例 (opens in a new tab)。
配置
你可以使用 spack.config.js 来配置打包,选项与 webpack 类似。未来,我们正在探索与 webpack 兼容的插件系统。
spack.config.js
module.exports = {
entry: {
web: __dirname + "/src/index.ts",
},
output: {
path: __dirname + "/lib",
},
};注意:目前需要 CommonJS。未来将支持 ES 模块。
如果你希望配置具有自动补全或类型检查功能,可以使用 @swc/core/spack 中的 config 函数包装导出。它是一个带有类型注解的恒等函数。
spack.config.js
const { config } = require("@swc/core/spack");
module.exports = config({
entry: {
web: __dirname + "/src/index.ts",
},
output: {
path: __dirname + "/lib",
},
});mode
可能的值:production、debug、none。
目前此值未被使用,但其行为将与 webpack 类似。
entry
确定打包的入口。你可以指定一个文件或一个包名到文件路径的映射。
注意:目前这应该是绝对路径。你可以使用
__dirname来创建一个。未来,SWC 将支持使用相对路径,并将相对于
spack.config.js解析文件。
output
你可以使用 output 更改打包器的目标目录。
spack.config.js
const { config } = require("@swc/core/spack");
module.exports = config({
output: {
path: __dirname + "/lib",
// name 是可选的。
name: "index.js",
},
});options
用于控制 SWC 的行为。此字段是可选的。