SWC

启用 SWC 构建的 Storybook 插件。

在 Github 上查看

storybook-addon-swc

npm version codecov license Github Twitter

通过 swc 构建,从而提高构建速度的 Storybook 插件。

🗒 示例

🚀 安装

$ npm install -D storybook-addon-swc @swc/core

👏 入门

编辑 .storybook/main.js 文件并注册插件。

module.exports = {
  addons: [
    'storybook-addon-swc',
  ],
};

🔧 配置

可以根据需要传递其他配置选项。

module.exports = {
  addons: [
    {
      name: 'storybook-addon-swc',
      options: {
        enable: true,
        enableSwcLoader: true,
        enableSwcMinify: true,
        swcLoaderOptions: {},
        swcMinifyOptions: {},
      },
    },
  ],
};

选项

名称 描述 类型 默认值
enable 如果设置为 false,则禁用此插件。 布尔值 true
enableSwcLoader 如果设置为 false,则禁用 swc-loader 并使用 babel-loader。 布尔值 true
enableSwcMinify 如果设置为 false,则禁用使用 swc 进行压缩,并使用传统的 terser 进行压缩。 布尔值 true
swcLoaderOptions swc 加载器的选项。 对象 参见
swcMinifyOptions swc 压缩的选项。 对象 参见

SWC 插件

SWC 插件功能仍在实验阶段,但可以通过更改以下设置来使用。

module.exports = {
  addons: [
    {
      name: 'storybook-addon-swc',
      options: {
        swcLoaderOptions: {
          jsc: {
            experimental: {
              plugins: [['plugin-name', {}]],
            },
          },
        },
      },
    },
  ],
};

🎓 替代方案

storybook-addon-turbo-build

此插件使用 esbuild-loader 替换 babel-loader。
它在 storybook-addon-swc 的开发中用作参考。

storybook-builder-vite

此构建器将 Storybook 的构建系统从 Webpack 更改为 Vite。
Vite 非常快,因为它在开发期间不会进行打包。

🤝 贡献

欢迎贡献、提出问题和功能请求。

如果您想贡献,请随时查看 问题页面

📝 许可证

版权所有 © 2020 @Karibash

此项目已获得 MIT 许可。