'web'
>= 1.0.0
Setting the build target of Rsbuild.
Rsbuild supports multiple build targets for running in different environments. After setting the target type, the default configuration of Rsbuild will change accordingly.
By default, the target is set to 'web' and will build outputs for running in the browser.
Rsbuild will read the Browserslist config in the project to determine the range of browsers.
In addition to 'web'
, target
can also be set to the following values:
'node'
: Build for Node.js environment, usually used in SSR or other scenarios.'web-worker'
: Build for web worker environment.For example, to build for the Node.js environment:
You can use environments to build multiple targets in parallel.
For example, to build web
outputs and node
outputs at the same time:
Refers to the build target running in the Node.js environment, usually used in scenarios such as SSR.
When target
is set to 'node'
, Rsbuild will:
'node'
.['node >= 16']
.false
. This means that CSS code will not be extracted to separate files, but the id information of CSS Modules will be included in the bundle.When target
is set to 'node'
, Rsbuild allows you to import Node.js Addons in JavaScript files.
For example:
The referenced addons file will be output to the dist
directory:
Refers to the build target running in the Web Worker environment.
When target
is set to 'web-worker'
, Rsbuild will:
'webworker'
.false
).false
. This means that CSS code will not be extracted to separate files, but the id information of CSS Modules will be included in the bundle.For more information, please refer to: Using Web Workers.
Rspack supports other target types, such as electron-main
and electron-renderer
.
Rsbuild currently does not support these targets. You can configure these targets using tools.rspack.
For example, setting the target
to 'electron-main'
will override the default 'web'
set by Rsbuild.