December 11, 2023

Rsbuild 0.2 版本包含一些 API 的不兼容更新,请参考当前文档进行升级。
我们将 createRsbuild 方法的 target 移动至 rsbuild 配置对象中,这个改动使用户可以在 Rsbuild 配置文件中配置 targets。
const rsbuild = await createRsbuild({
target: ['web', 'node'],
});// rsbuild.config.ts
export default {
output: {
targets: ['web', 'node'],
},
};仅影响 JavaScript API。使用 Rsbuild CLI 的用户不需要做任何改变。
删除已弃用的 source.entries 配置。
自 Rsbuild 0.1.0 起,source.entries 已更名为 source.entry,我们在 Rsbuild v0.2.0中删除了source.entries` 配置。
// rsbuild.config.ts
export default {
source: {
entries: {},
},
};// rsbuild.config.ts
export default {
source: {
entry: {},
},
};dev.writeToDisk 的默认值变更为 false.
原因:
用户可以手动开启写入磁盘:
export default {
dev: {
writeToDisk: true,
},
};@rsbuild/plugin-babel 将所有的 babel-loader 选项移动到 babelLoaderOptions:
pluginBabel({
plugins: [],
presets: [],
});pluginBabel([
babelLoaderOptions: {
plugins: [],
presets: [],
}
]);这种改变使我们能为 pluginBabel 添加更多选项,如 include 和 exclude。
output.disableSourceMap 已经更名为 output.sourceMap.
export default {
output: {
disableSourceMap: {
js: true,
css: true,
},
},
};export default {
output: {
sourceMap: {
js: false,
css: false,
},
},
};source map 的默认值已更新,以提升构建性能。
将 output.disableCssExtract 更名为 output.injectStyles 以更加直观:
export default {
output: {
disableCssExtract: true,
},
};export default {
output: {
injectStyles: true,
},
};