> For AI agents: the complete documentation index is available at /zh/llms.txt, the full documentation bundle is available at /zh/llms-full.txt.

# 常见问题

## Rspack 和 webpack 的关系是怎样的？

**我们和 webpack 团队确立了合作关系**，Rspack 是 webpack 通过 Rust 进行性能优化的一个尝试，并已经取得了良好进展。

我们会和 webpack 团队持续探索优化 webpack 的更多可能性。

## 兼容 JavaScript 和 webpack 生态不会存在性能损失吗？

我们更重视以较低的迁移成本为现有的 web 项目带来性能提升，而不是单纯追求 benchmark 指标。

兼容 webpack 生态会带来一定的性能损失，但是根据我们的验证结果，这个损失在可接受范围内。

## 不使用 babel-loader 的话，如何实现兼容性降级编译？

Rspack 内部使用 SWC 进行代码的降级编译（通过 [builtin:swc-loader](/zh/guide/features/builtin-swc-loader.md)），因此无需通过 babel-loader 来进行代码的降级编译。

## Rspack 对 webpack API 是 100% 兼容吗？

不是，Rspack 目标**不是**完全兼容 100% 的 webpack API，根据二八定律的原则，我们优先实现了在大部分项目里高频使用的 API，并根据用户需求来进一步支持其他 API。

## Rspack 相比 webpack + SWC-loader 有什么优势？

虽然 webpack + SWC-loader 解决了 babel-loader 的性能问题，但 webpack 本身仍然存在较多的性能瓶颈，如 make，seal 等阶段都是单线程的，而 Rspack 突破了这些限制，因此 Rspack 比 webpack + SWC-loader 有更好的性能表现，尤其是在多核场景。

## 自定义插件和自定义 Loader 需要使用 Rust 进行开发吗？

不需要。你可以像开发 webpack 插件和 loader 一样，使用 JavaScript 来开发插件和 loader。你也可以选择使用 Rust 来开发插件和 loader，参考 [rspack-binding-template](https://github.com/rstackjs/rspack-binding-template)。
