Skip to content
文档
配置
打包

打包配置

🚧

此功能仍在建设中。

SWC 能够将多个 JavaScript 或 TypeScript 文件打包成一个。

此功能目前命名为 spack,但将在 v2 中更名为 swcpackspack.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

可能的值:productiondebugnone

目前此值未被使用,但其行为将与 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 的行为。此字段是可选的。