跳至内容
文档
配置
捆绑

捆绑配置

🚧

此功能仍在开发中。

SWC 能够将多个 JavaScript 或 TypeScript 文件捆绑到一个文件中。

此功能目前名为 spack,但将在 v2 中重命名为 swcpackspack.config.js 将被弃用,取而代之的是 swcpack.config.js

查看 捆绑的基本示例 (在新标签页中打开).

配置

您可以使用 spack.config.js 配置捆绑,其选项与 webpack 类似。将来,我们将探索与 webpack 兼容的插件系统。

spack.config.js
 
module.exports = {
  entry: {
    web: __dirname + "/src/index.ts",
  },
  output: {
    path: __dirname + "/lib",
  },
};

注意:目前需要 CommonJS。将来将支持 ES 模块。

如果您想要配置的自动完成或类型检查,您可以使用 config 函数(来自 @swc/core/spack)包装导出。它是一个带有类型注释的标识函数。

spack.config.js
const { config } = require("@swc/core/spack");
 
module.exports = config({
  entry: {
    web: __dirname + "/src/index.ts",
  },
  output: {
    path: __dirname + "/lib",
  },
});

模式

可能的值:productiondebugnone

目前此值未被使用,但其行为将类似于 webpack。

入口

确定捆绑的入口。您可以指定一个文件或一个捆绑包名称到文件路径的映射。

注意:目前这应该是绝对路径。您可以使用 __dirname 来创建一个。

将来,SWC 将支持使用相对路径,并将相对于 spack.config.js 解析文件。

输出

您可以使用 output 更改捆绑器的目标目录。

spack.config.js
const { config } = require("@swc/core/spack");
 
module.exports = config({
  output: {
    path: __dirname + "/lib",
    // Name is optional.
    name: "index.js",
  },
});

选项

用于控制 SWC 的行为。此字段是可选的。

上次更新于 2024 年 4 月 15 日