@winner-fed/bundler-rsbuild2
v0.19.2
Published
@winner-fed/bundler-rsbuild2, based on Rsbuild 2.x (Rspack 2.x). External bundler for winjs, not a dependency of preset-win.
Readme
@winner-fed/bundler-rsbuild2
基于 Rsbuild 2.x(Rspack 2.x)的 WinJS 构建/开发 bundler。
与 @winner-fed/bundler-rsbuild(Rsbuild 1.x)相互独立、互不影响:
本包不内置于 @winner-fed/preset-win 的依赖中,属于外置(热插拔)bundler,
需要在业务项目中显式安装。
环境要求
- Node.js
>=20.19(Rsbuild 2.x 的硬性要求,@rsbuild/core2.x 为纯 ESM 包, 本包通过 Node 的 require(esm) 能力在 CJS 产物中加载它)
使用
pnpm add -D @winner-fed/bundler-rsbuild2// .winrc.ts
export default defineConfig({
rsbuild2: {
removeConsole: true,
},
});未安装本包且未配置 rsbuild2 的项目完全不受影响;卸载本包并移除 rsbuild2
配置即可回退到其他 bundler。
与 bundler-rsbuild(Rsbuild 1.x)的行为差异
| 项目 | bundler-rsbuild | bundler-rsbuild2 |
| ---- | --------------- | ---------------- |
| analyze 配置 / ANALYZE 环境变量 | performance.bundleAnalyze | Rsbuild 2.x 已移除该配置,输出警告并建议使用 Rsdoctor |
| moment locale 忽略 | performance.removeMomentLocale | 改由 tools.rspack 中的 IgnorePlugin 实现(默认行为一致) |
| server.host 默认值 | 0.0.0.0 | 显式透传 host,不受 Rsbuild 2.x 默认值(localhost)影响 |
| proxy changeOrigin 默认值 | false(http-proxy-middleware v2) | 显式补 false,不受 http-proxy-middleware v4 默认值(true)影响 |
| resolve.alias | resolve.alias | resolve.alias(v2 中 source.alias 已移除) |
用户侧升级注意事项(Rsbuild 1.x → 2.x)
- 在
modifyBundlerChain中往CHAIN_ID.RULE.JS/RULE.CSS挂 loader 的代码, 需改用CHAIN_ID.ONE_OF.JS_MAIN/CSS_MAIN(v2 的 JS/CSS 规则改用 oneOf 分支)。 - 浏览器默认目标升级(如 Chrome 87 → 107),如需旧行为请显式配置
targets。 core-js从默认依赖改为可选 peer 依赖,使用output.polyfill时需自行安装。
