@modern-js/main-doc 2.60.0 → 2.60.1
Sign up to get free protection for your applications and to get access to all the features.
- package/docs/en/apis/app/commands.mdx +0 -16
- package/docs/en/community/contributing-guide.mdx +0 -1
- package/docs/en/components/builder.mdx +3 -0
- package/docs/en/components/bundler.mdx +3 -0
- package/docs/en/components/enableSwc.mdx +17 -0
- package/docs/en/components/esbuild.mdx +3 -0
- package/docs/en/components/micro-frontend.mdx +6 -0
- package/docs/en/components/module-federation.mdx +7 -0
- package/docs/en/components/nodeVersion.mdx +26 -0
- package/docs/en/components/output-asset-prefix-extend.mdx +0 -0
- package/docs/en/components/output-polyfill-extend.mdx +1 -0
- package/docs/en/components/prerequisites.mdx +1 -1
- package/docs/en/components/rsbuild-config-tooltip.mdx +5 -0
- package/docs/en/components/rsbuild.mdx +3 -0
- package/docs/en/components/rspack.mdx +3 -0
- package/docs/en/components/rspackPrecautions.mdx +6 -0
- package/docs/en/components/rspackTip.mdx +7 -0
- package/docs/en/components/swc.mdx +3 -0
- package/docs/en/configure/app/dev/asset-prefix.mdx +12 -2
- package/docs/en/configure/app/dev/before-start-url.mdx +14 -2
- package/docs/en/configure/app/dev/client.mdx +20 -16
- package/docs/en/configure/app/dev/hmr.mdx +8 -2
- package/docs/en/configure/app/dev/host.mdx +15 -2
- package/docs/en/configure/app/dev/https.mdx +71 -2
- package/docs/en/configure/app/dev/live-reload.mdx +3 -15
- package/docs/en/configure/app/dev/port.mdx +18 -2
- package/docs/en/configure/app/dev/progress-bar.mdx +17 -2
- package/docs/en/configure/app/dev/setup-middlewares.mdx +25 -39
- package/docs/en/configure/app/dev/start-url.mdx +46 -2
- package/docs/en/configure/app/dev/watch-files.mdx +5 -39
- package/docs/en/configure/app/dev/write-to-disk.mdx +4 -27
- package/docs/en/configure/app/experiments/lazy-compilation.mdx +84 -2
- package/docs/en/configure/app/experiments/source-build.mdx +28 -3
- package/docs/en/configure/app/html/app-icon.mdx +48 -2
- package/docs/en/configure/app/html/crossorigin.mdx +8 -2
- package/docs/en/configure/app/html/disable-html-folder.mdx +35 -2
- package/docs/en/configure/app/html/favicon-by-entries.mdx +29 -2
- package/docs/en/configure/app/html/favicon.mdx +14 -2
- package/docs/en/configure/app/html/inject-by-entries.mdx +29 -2
- package/docs/en/configure/app/html/inject.mdx +8 -2
- package/docs/en/configure/app/html/meta-by-entries.mdx +41 -2
- package/docs/en/configure/app/html/meta.mdx +22 -2
- package/docs/en/configure/app/html/mount-id.mdx +8 -2
- package/docs/en/configure/app/html/script-loading.mdx +8 -2
- package/docs/en/configure/app/html/tags-by-entries.mdx +37 -2
- package/docs/en/configure/app/html/tags.mdx +13 -2
- package/docs/en/configure/app/html/template-by-entries.mdx +26 -2
- package/docs/en/configure/app/html/template-parameters-by-entries.mdx +28 -2
- package/docs/en/configure/app/html/template-parameters.mdx +31 -2
- package/docs/en/configure/app/html/template.mdx +8 -2
- package/docs/en/configure/app/html/title-by-entries.mdx +30 -2
- package/docs/en/configure/app/html/title.mdx +16 -2
- package/docs/en/configure/app/output/asset-prefix.mdx +12 -2
- package/docs/en/configure/app/output/assets-retry.mdx +72 -2
- package/docs/en/configure/app/output/charset.mdx +8 -2
- package/docs/en/configure/app/output/clean-dist-path.mdx +13 -2
- package/docs/en/configure/app/output/convert-to-rem.mdx +76 -2
- package/docs/en/configure/app/output/copy.mdx +5 -2
- package/docs/en/configure/app/output/css-module-local-ident-name.mdx +14 -2
- package/docs/en/configure/app/output/css-modules.mdx +46 -2
- package/docs/en/configure/app/output/data-uri-limit.mdx +24 -2
- package/docs/en/configure/app/output/disable-css-extract.mdx +9 -2
- package/docs/en/configure/app/output/disable-css-module-extension.mdx +52 -2
- package/docs/en/configure/app/output/disable-filename-hash.mdx +9 -2
- package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +38 -2
- package/docs/en/configure/app/output/disable-minimize.mdx +7 -2
- package/docs/en/configure/app/output/disable-source-map.mdx +24 -2
- package/docs/en/configure/app/output/disable-svgr.mdx +13 -2
- package/docs/en/configure/app/output/disable-ts-checker.mdx +46 -2
- package/docs/en/configure/app/output/dist-path.mdx +39 -2
- package/docs/en/configure/app/output/enable-asset-fallback.mdx +29 -2
- package/docs/en/configure/app/output/enable-asset-manifest.mdx +33 -2
- package/docs/en/configure/app/output/enable-css-module-tsdeclaration.mdx +25 -2
- package/docs/en/configure/app/output/enable-inline-scripts.mdx +15 -2
- package/docs/en/configure/app/output/enable-inline-styles.mdx +15 -2
- package/docs/en/configure/app/output/enable-latest-decorators.mdx +7 -2
- package/docs/en/configure/app/output/externals.mdx +18 -2
- package/docs/en/configure/app/output/filename-hash.mdx +3 -27
- package/docs/en/configure/app/output/filename.mdx +47 -2
- package/docs/en/configure/app/output/inject-styles.mdx +15 -0
- package/docs/en/configure/app/output/inline-scripts.mdx +34 -0
- package/docs/en/configure/app/output/inline-styles.mdx +34 -0
- package/docs/en/configure/app/output/legal-comments.mdx +16 -2
- package/docs/en/configure/app/output/minify.mdx +27 -0
- package/docs/en/configure/app/output/override-browserslist.mdx +18 -2
- package/docs/en/configure/app/output/polyfill.mdx +12 -2
- package/docs/en/configure/app/output/source-map.mdx +30 -0
- package/docs/en/configure/app/output/ssg.mdx +20 -17
- package/docs/en/configure/app/output/svg-default-export.mdx +27 -2
- package/docs/en/configure/app/performance/build-cache.mdx +78 -2
- package/docs/en/configure/app/performance/bundle-analyze.mdx +18 -2
- package/docs/en/configure/app/performance/chunk-split.mdx +38 -2
- package/docs/en/configure/app/performance/dns-prefetch.mdx +13 -2
- package/docs/en/configure/app/performance/preconnect.mdx +14 -2
- package/docs/en/configure/app/performance/prefetch.mdx +19 -2
- package/docs/en/configure/app/performance/preload.mdx +21 -2
- package/docs/en/configure/app/performance/print-file-size.mdx +38 -2
- package/docs/en/configure/app/performance/profile.mdx +8 -2
- package/docs/en/configure/app/performance/remove-console.mdx +8 -2
- package/docs/en/configure/app/performance/remove-moment-locale.mdx +8 -2
- package/docs/en/configure/app/performance/transform-lodash.mdx +42 -2
- package/docs/en/configure/app/plugins.mdx +1 -1
- package/docs/en/configure/app/security/check-syntax.mdx +66 -2
- package/docs/en/configure/app/security/nonce.mdx +13 -2
- package/docs/en/configure/app/security/sri.mdx +19 -2
- package/docs/en/configure/app/server/port.mdx +5 -0
- package/docs/en/configure/app/server/ssr.mdx +10 -9
- package/docs/en/configure/app/source/alias-strategy.mdx +8 -2
- package/docs/en/configure/app/source/alias.mdx +17 -2
- package/docs/en/configure/app/source/config-dir.mdx +1 -1
- package/docs/en/configure/app/source/decorators.mdx +8 -21
- package/docs/en/configure/app/source/define.mdx +14 -2
- package/docs/en/configure/app/source/enable-async-entry.mdx +1 -1
- package/docs/en/configure/app/source/entries-dir.mdx +1 -1
- package/docs/en/configure/app/source/exclude.mdx +8 -2
- package/docs/en/configure/app/source/global-vars.mdx +103 -2
- package/docs/en/configure/app/source/include.mdx +19 -2
- package/docs/en/configure/app/source/mainEntryName.mdx +1 -1
- package/docs/en/configure/app/source/module-scopes.mdx +62 -2
- package/docs/en/configure/app/source/pre-entry.mdx +8 -2
- package/docs/en/configure/app/source/resolve-extension-prefix.mdx +48 -2
- package/docs/en/configure/app/source/resolve-main-fields.mdx +39 -2
- package/docs/en/configure/app/source/transform-import.mdx +56 -2
- package/docs/en/configure/app/tools/autoprefixer.mdx +41 -2
- package/docs/en/configure/app/tools/babel.mdx +218 -2
- package/docs/en/configure/app/tools/bundler-chain.mdx +23 -2
- package/docs/en/configure/app/tools/css-extract.mdx +31 -2
- package/docs/en/configure/app/tools/css-loader.mdx +14 -2
- package/docs/en/configure/app/tools/dev-server.mdx +435 -2
- package/docs/en/configure/app/tools/esbuild.mdx +1 -1
- package/docs/en/configure/app/tools/html-plugin.mdx +21 -2
- package/docs/en/configure/app/tools/less.mdx +78 -2
- package/docs/en/configure/app/tools/minify-css.mdx +50 -2
- package/docs/en/configure/app/tools/postcss.mdx +30 -2
- package/docs/en/configure/app/tools/pug.mdx +47 -2
- package/docs/en/configure/app/tools/rspack.mdx +8 -2
- package/docs/en/configure/app/tools/sass.mdx +75 -2
- package/docs/en/configure/app/tools/style-loader.mdx +8 -2
- package/docs/en/configure/app/tools/styled-components.mdx +48 -2
- package/docs/en/configure/app/tools/swc.mdx +33 -2
- package/docs/en/configure/app/tools/terser.mdx +49 -2
- package/docs/en/configure/app/tools/ts-checker.mdx +49 -2
- package/docs/en/configure/app/tools/ts-loader.mdx +63 -2
- package/docs/en/configure/app/tools/webpack-chain.mdx +239 -2
- package/docs/en/configure/app/tools/webpack.mdx +295 -2
- package/docs/en/guides/advanced-features/_meta.json +0 -1
- package/docs/en/guides/advanced-features/rspack-start.mdx +2 -2
- package/docs/en/guides/basic-features/css/css-modules.mdx +2 -2
- package/docs/en/guides/basic-features/output-files.mdx +1 -1
- package/docs/en/guides/basic-features/render/ssg.mdx +1 -1
- package/docs/en/guides/concept/builder.mdx +1 -1
- package/docs/en/guides/get-started/glossary.mdx +7 -7
- package/docs/en/guides/get-started/quick-start.mdx +1 -1
- package/docs/en/guides/topic-detail/_meta.json +0 -6
- package/docs/en/guides/topic-detail/micro-frontend/c01-introduction.mdx +1 -1
- package/docs/en/guides/topic-detail/model/quick-start.mdx +5 -0
- package/docs/en/guides/troubleshooting/builder.mdx +2 -2
- package/docs/en/plugin/cli-plugins/plugin-swc.mdx +4 -4
- package/docs/en/plugin/rsbuild-plugins/plugin-esbuild.mdx +4 -4
- package/docs/zh/apis/app/commands.mdx +0 -18
- package/docs/zh/community/contributing-guide.mdx +0 -1
- package/docs/zh/components/builder.mdx +3 -0
- package/docs/zh/components/bundler.mdx +4 -0
- package/docs/zh/components/enableSwc.mdx +17 -0
- package/docs/zh/components/esbuild.mdx +3 -0
- package/docs/zh/components/micro-frontend.mdx +6 -0
- package/docs/zh/components/module-federation.mdx +7 -0
- package/docs/zh/components/nodeVersion.mdx +28 -0
- package/docs/zh/components/output-asset-prefix-extend.mdx +0 -0
- package/docs/zh/components/output-polyfill-extend.mdx +1 -0
- package/docs/zh/components/prerequisites.mdx +1 -1
- package/docs/zh/components/rsbuild-config-tooltip.mdx +5 -0
- package/docs/zh/components/rsbuild.mdx +3 -0
- package/docs/zh/components/rspack.mdx +3 -0
- package/docs/zh/components/rspackPrecautions.mdx +6 -0
- package/docs/zh/components/rspackTip.mdx +7 -0
- package/docs/zh/components/swc.mdx +3 -0
- package/docs/zh/configure/app/dev/asset-prefix.mdx +12 -2
- package/docs/zh/configure/app/dev/before-start-url.mdx +14 -2
- package/docs/zh/configure/app/dev/client.mdx +20 -16
- package/docs/zh/configure/app/dev/hmr.mdx +8 -2
- package/docs/zh/configure/app/dev/host.mdx +15 -2
- package/docs/zh/configure/app/dev/https.mdx +72 -2
- package/docs/zh/configure/app/dev/live-reload.mdx +3 -15
- package/docs/zh/configure/app/dev/port.mdx +18 -2
- package/docs/zh/configure/app/dev/progress-bar.mdx +17 -2
- package/docs/zh/configure/app/dev/setup-middlewares.mdx +26 -39
- package/docs/zh/configure/app/dev/start-url.mdx +47 -2
- package/docs/zh/configure/app/dev/watch-files.mdx +5 -39
- package/docs/zh/configure/app/dev/write-to-disk.mdx +3 -26
- package/docs/zh/configure/app/experiments/lazy-compilation.mdx +84 -2
- package/docs/zh/configure/app/experiments/source-build.mdx +29 -2
- package/docs/zh/configure/app/html/app-icon.mdx +48 -2
- package/docs/zh/configure/app/html/crossorigin.mdx +9 -2
- package/docs/zh/configure/app/html/disable-html-folder.mdx +34 -2
- package/docs/zh/configure/app/html/favicon-by-entries.mdx +30 -2
- package/docs/zh/configure/app/html/favicon.mdx +15 -2
- package/docs/zh/configure/app/html/inject-by-entries.mdx +30 -2
- package/docs/zh/configure/app/html/inject.mdx +8 -2
- package/docs/zh/configure/app/html/meta-by-entries.mdx +41 -2
- package/docs/zh/configure/app/html/meta.mdx +22 -2
- package/docs/zh/configure/app/html/mount-id.mdx +8 -2
- package/docs/zh/configure/app/html/script-loading.mdx +8 -2
- package/docs/zh/configure/app/html/tags-by-entries.mdx +37 -2
- package/docs/zh/configure/app/html/tags.mdx +13 -2
- package/docs/zh/configure/app/html/template-by-entries.mdx +26 -2
- package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +29 -2
- package/docs/zh/configure/app/html/template-parameters.mdx +31 -2
- package/docs/zh/configure/app/html/template.mdx +8 -2
- package/docs/zh/configure/app/html/title-by-entries.mdx +30 -2
- package/docs/zh/configure/app/html/title.mdx +16 -2
- package/docs/zh/configure/app/output/asset-prefix.mdx +12 -2
- package/docs/zh/configure/app/output/assets-retry.mdx +72 -2
- package/docs/zh/configure/app/output/charset.mdx +8 -2
- package/docs/zh/configure/app/output/clean-dist-path.mdx +13 -2
- package/docs/zh/configure/app/output/convert-to-rem.mdx +77 -2
- package/docs/zh/configure/app/output/copy.mdx +6 -2
- package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +14 -2
- package/docs/zh/configure/app/output/css-modules.mdx +46 -2
- package/docs/zh/configure/app/output/data-uri-limit.mdx +24 -2
- package/docs/zh/configure/app/output/disable-css-extract.mdx +9 -2
- package/docs/zh/configure/app/output/disable-css-module-extension.mdx +52 -2
- package/docs/zh/configure/app/output/disable-filename-hash.mdx +9 -2
- package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +38 -2
- package/docs/zh/configure/app/output/disable-minimize.mdx +7 -2
- package/docs/zh/configure/app/output/disable-source-map.mdx +24 -2
- package/docs/zh/configure/app/output/disable-svgr.mdx +14 -2
- package/docs/zh/configure/app/output/disable-ts-checker.mdx +46 -2
- package/docs/zh/configure/app/output/dist-path.mdx +39 -2
- package/docs/zh/configure/app/output/enable-asset-fallback.mdx +29 -2
- package/docs/zh/configure/app/output/enable-asset-manifest.mdx +33 -2
- package/docs/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +25 -2
- package/docs/zh/configure/app/output/enable-inline-scripts.mdx +15 -2
- package/docs/zh/configure/app/output/enable-inline-styles.mdx +15 -2
- package/docs/zh/configure/app/output/enable-latest-decorators.mdx +7 -2
- package/docs/zh/configure/app/output/externals.mdx +18 -2
- package/docs/zh/configure/app/output/filename-hash.mdx +4 -27
- package/docs/zh/configure/app/output/filename.mdx +47 -2
- package/docs/zh/configure/app/output/inject-styles.mdx +15 -0
- package/docs/zh/configure/app/output/inline-scripts.mdx +34 -0
- package/docs/zh/configure/app/output/inline-styles.mdx +34 -0
- package/docs/zh/configure/app/output/legal-comments.mdx +16 -2
- package/docs/zh/configure/app/output/minify.mdx +27 -0
- package/docs/zh/configure/app/output/override-browserslist.mdx +20 -2
- package/docs/zh/configure/app/output/polyfill.mdx +12 -2
- package/docs/zh/configure/app/output/source-map.mdx +30 -0
- package/docs/zh/configure/app/output/ssg.mdx +19 -15
- package/docs/zh/configure/app/output/svg-default-export.mdx +27 -2
- package/docs/zh/configure/app/performance/build-cache.mdx +77 -2
- package/docs/zh/configure/app/performance/bundle-analyze.mdx +18 -2
- package/docs/zh/configure/app/performance/chunk-split.mdx +38 -2
- package/docs/zh/configure/app/performance/dns-prefetch.mdx +13 -2
- package/docs/zh/configure/app/performance/preconnect.mdx +14 -2
- package/docs/zh/configure/app/performance/prefetch.mdx +19 -2
- package/docs/zh/configure/app/performance/preload.mdx +21 -2
- package/docs/zh/configure/app/performance/print-file-size.mdx +38 -2
- package/docs/zh/configure/app/performance/profile.mdx +8 -2
- package/docs/zh/configure/app/performance/remove-console.mdx +8 -2
- package/docs/zh/configure/app/performance/remove-moment-locale.mdx +8 -2
- package/docs/zh/configure/app/performance/transform-lodash.mdx +42 -2
- package/docs/zh/configure/app/plugins.mdx +1 -1
- package/docs/zh/configure/app/security/check-syntax.mdx +66 -2
- package/docs/zh/configure/app/security/nonce.mdx +13 -2
- package/docs/zh/configure/app/security/sri.mdx +19 -2
- package/docs/zh/configure/app/server/port.mdx +5 -0
- package/docs/zh/configure/app/server/ssr.mdx +10 -9
- package/docs/zh/configure/app/source/alias-strategy.mdx +8 -2
- package/docs/zh/configure/app/source/alias.mdx +17 -2
- package/docs/zh/configure/app/source/config-dir.mdx +1 -1
- package/docs/zh/configure/app/source/decorators.mdx +8 -20
- package/docs/zh/configure/app/source/define.mdx +14 -2
- package/docs/zh/configure/app/source/enable-async-entry.mdx +1 -1
- package/docs/zh/configure/app/source/entries-dir.mdx +1 -1
- package/docs/zh/configure/app/source/exclude.mdx +8 -2
- package/docs/zh/configure/app/source/global-vars.mdx +102 -2
- package/docs/zh/configure/app/source/include.mdx +19 -2
- package/docs/zh/configure/app/source/mainEntryName.mdx +1 -1
- package/docs/zh/configure/app/source/module-scopes.mdx +62 -2
- package/docs/zh/configure/app/source/pre-entry.mdx +8 -2
- package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +50 -2
- package/docs/zh/configure/app/source/resolve-main-fields.mdx +39 -2
- package/docs/zh/configure/app/source/transform-import.mdx +56 -2
- package/docs/zh/configure/app/tools/autoprefixer.mdx +41 -2
- package/docs/zh/configure/app/tools/babel.mdx +218 -2
- package/docs/zh/configure/app/tools/bundler-chain.mdx +26 -2
- package/docs/zh/configure/app/tools/css-extract.mdx +28 -2
- package/docs/zh/configure/app/tools/css-loader.mdx +15 -2
- package/docs/zh/configure/app/tools/dev-server.mdx +435 -2
- package/docs/zh/configure/app/tools/esbuild.mdx +1 -1
- package/docs/zh/configure/app/tools/html-plugin.mdx +21 -2
- package/docs/zh/configure/app/tools/less.mdx +79 -2
- package/docs/zh/configure/app/tools/minify-css.mdx +50 -2
- package/docs/zh/configure/app/tools/postcss.mdx +31 -2
- package/docs/zh/configure/app/tools/pug.mdx +47 -2
- package/docs/zh/configure/app/tools/rspack.mdx +8 -2
- package/docs/zh/configure/app/tools/sass.mdx +73 -2
- package/docs/zh/configure/app/tools/style-loader.mdx +8 -2
- package/docs/zh/configure/app/tools/styled-components.mdx +47 -2
- package/docs/zh/configure/app/tools/swc.mdx +33 -2
- package/docs/zh/configure/app/tools/terser.mdx +49 -2
- package/docs/zh/configure/app/tools/ts-checker.mdx +49 -2
- package/docs/zh/configure/app/tools/ts-loader.mdx +63 -2
- package/docs/zh/configure/app/tools/webpack-chain.mdx +243 -2
- package/docs/zh/configure/app/tools/webpack.mdx +295 -2
- package/docs/zh/guides/advanced-features/_meta.json +0 -1
- package/docs/zh/guides/advanced-features/rspack-start.mdx +2 -2
- package/docs/zh/guides/basic-features/css/css-modules.mdx +1 -1
- package/docs/zh/guides/basic-features/output-files.mdx +2 -2
- package/docs/zh/guides/concept/builder.mdx +1 -1
- package/docs/zh/guides/get-started/glossary.mdx +7 -7
- package/docs/zh/guides/get-started/quick-start.mdx +1 -1
- package/docs/zh/guides/topic-detail/_meta.json +0 -6
- package/docs/zh/guides/topic-detail/micro-frontend/c01-introduction.mdx +1 -1
- package/docs/zh/guides/topic-detail/model/quick-start.mdx +5 -0
- package/docs/zh/guides/troubleshooting/builder.mdx +2 -2
- package/docs/zh/plugin/cli-plugins/plugin-swc.mdx +4 -4
- package/docs/zh/plugin/rsbuild-plugins/plugin-esbuild.mdx +6 -6
- package/package.json +6 -11
- package/src/components/RsbuildLink/index.tsx +19 -0
- /package/docs/en/configure/app/output/{splitRouteChunks.mdx → split-route-chunks.mdx} +0 -0
- /package/docs/zh/configure/app/output/{splitRouteChunks.mdx → split-route-chunks.mdx} +0 -0
@@ -4,6 +4,81 @@ title: buildCache
|
|
4
4
|
|
5
5
|
# performance.buildCache
|
6
6
|
|
7
|
-
|
7
|
+
- **类型:**
|
8
8
|
|
9
|
-
|
9
|
+
```ts
|
10
|
+
type BuildCacheConfig =
|
11
|
+
| {
|
12
|
+
/**
|
13
|
+
* webpack 文件缓存系统的缓存目录
|
14
|
+
*/
|
15
|
+
cacheDirectory?: string;
|
16
|
+
/**
|
17
|
+
* 根据 cacheDigest 内容设置不同的缓存名称
|
18
|
+
*/
|
19
|
+
cacheDigest?: Array<string | undefined>;
|
20
|
+
}
|
21
|
+
| boolean;
|
22
|
+
```
|
23
|
+
|
24
|
+
- **默认值:**
|
25
|
+
|
26
|
+
```js
|
27
|
+
const defaultBuildCacheConfig = {
|
28
|
+
cacheDirectory: './node_modules/.cache/webpack',
|
29
|
+
};
|
30
|
+
```
|
31
|
+
|
32
|
+
- **打包工具:** `仅支持 webpack`
|
33
|
+
|
34
|
+
控制 Modern.js 在构建过程中的缓存行为。
|
35
|
+
|
36
|
+
Modern.js 默认会开启构建缓存来提升二次构建的速度,并默认把生成的缓存文件写到 `./node_modules/.cache/webpack` 目录下。
|
37
|
+
|
38
|
+
你可以通过 `buildCache` 配置缓存路径,比如:
|
39
|
+
|
40
|
+
```js
|
41
|
+
export default {
|
42
|
+
performance: {
|
43
|
+
buildCache: {
|
44
|
+
cacheDirectory: './node_modules/.custom_cache/webpack',
|
45
|
+
},
|
46
|
+
},
|
47
|
+
};
|
48
|
+
```
|
49
|
+
|
50
|
+
如果不希望缓存,你也可以将 `buildCache` 置为 `false` 将其禁用掉:
|
51
|
+
|
52
|
+
```js
|
53
|
+
export default {
|
54
|
+
performance: {
|
55
|
+
buildCache: false,
|
56
|
+
},
|
57
|
+
};
|
58
|
+
```
|
59
|
+
|
60
|
+
### cacheDigest
|
61
|
+
|
62
|
+
`cacheDigest` 用来添加一些会对构建结果产生影响的环境变量。Modern.js 将根据 `cacheDigest` 内容和当前构建模式来设置缓存名称,来确保不同的 `cacheDigest` 可以命中不同的缓存。
|
63
|
+
|
64
|
+
#### 示例
|
65
|
+
|
66
|
+
当前项目需要根据不同的 `APP_ID` 来设置不同的 extensions。默认情况下,由于当前项目的代码 & 配置 & 依赖未发生变化,会命中之前的缓存。
|
67
|
+
通过将 `APP_ID` 添加到 `cacheDigest` 中,在 `APP_ID` 变化时会去查找不同的缓存结果,从而避免命中不符合预期的缓存结果。
|
68
|
+
|
69
|
+
```js
|
70
|
+
export default {
|
71
|
+
tools: {
|
72
|
+
bundlerChain: chain => {
|
73
|
+
if (process.env.APP_ID === 'xxx') {
|
74
|
+
chain.resolve.extensions.prepend('.ttp.ts');
|
75
|
+
}
|
76
|
+
},
|
77
|
+
},
|
78
|
+
performance: {
|
79
|
+
buildCache: {
|
80
|
+
cacheDigest: [process.env.APP_ID],
|
81
|
+
},
|
82
|
+
},
|
83
|
+
};
|
84
|
+
```
|
@@ -1,9 +1,25 @@
|
|
1
1
|
---
|
2
2
|
title: bundleAnalyze
|
3
|
+
configName: performance.bundleAnalyze
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.bundleAnalyze
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `Object | undefined`
|
8
9
|
|
9
|
-
|
10
|
+
用于开启 [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) 插件来分析产物体积。
|
11
|
+
|
12
|
+
默认情况下,Modern.js 不会开启 `webpack-bundle-analyzer`。当开启该功能后,内部的默认配置如下:
|
13
|
+
|
14
|
+
```js
|
15
|
+
const defaultConfig = {
|
16
|
+
analyzerMode: 'static',
|
17
|
+
openAnalyzer: false,
|
18
|
+
// target 为编译目标,如 `web`、`node` 等
|
19
|
+
reportFilename: `report-${target}.html`,
|
20
|
+
};
|
21
|
+
```
|
22
|
+
|
23
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
24
|
+
|
25
|
+
<RsbuildConig />
|
@@ -1,9 +1,45 @@
|
|
1
1
|
---
|
2
2
|
title: chunkSplit
|
3
|
+
configName: performance.chunkSplit
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.chunkSplit
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `Object`
|
9
|
+
- **默认值:** `{ strategy: 'split-by-experience' }`
|
8
10
|
|
9
|
-
|
11
|
+
`performance.chunkSplit` 用于配置 Modern.js 的拆包策略。配置项的类型 `ChunkSplit` 如下:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
type ForceSplitting = RegExp[] | Record<string, RegExp>;
|
15
|
+
|
16
|
+
interface BaseChunkSplit {
|
17
|
+
strategy?:
|
18
|
+
| 'split-by-module'
|
19
|
+
| 'split-by-experience'
|
20
|
+
| 'all-in-one'
|
21
|
+
| 'single-vendor';
|
22
|
+
override?: SplitChunks;
|
23
|
+
forceSplitting?: ForceSplitting;
|
24
|
+
}
|
25
|
+
|
26
|
+
interface SplitBySize {
|
27
|
+
strategy?: 'split-by-size';
|
28
|
+
minSize?: number;
|
29
|
+
maxSize?: number;
|
30
|
+
override?: SplitChunks;
|
31
|
+
forceSplitting?: ForceSplitting;
|
32
|
+
}
|
33
|
+
|
34
|
+
interface SplitCustom {
|
35
|
+
strategy?: 'custom';
|
36
|
+
splitChunks?: SplitChunks;
|
37
|
+
forceSplitting?: ForceSplitting;
|
38
|
+
}
|
39
|
+
|
40
|
+
export type ChunkSplit = BaseChunkSplit | SplitBySize | SplitCustom;
|
41
|
+
```
|
42
|
+
|
43
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
44
|
+
|
45
|
+
<RsbuildConig />
|
@@ -1,9 +1,20 @@
|
|
1
1
|
---
|
2
2
|
title: dnsPrefetch
|
3
|
+
configName: performance.dnsPrefetch
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.dnsPrefetch
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `undefined | string[]`
|
8
9
|
|
9
|
-
|
10
|
+
- **默认值:** `undefined`
|
11
|
+
|
12
|
+
为哪些资源配置 [dns-prefetch](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel/dns-prefetch) 属性。
|
13
|
+
|
14
|
+
配置该属性可以在请求资源之前解析域名,降低请求延迟,提升加载性能。
|
15
|
+
|
16
|
+
更多信息可参考:[Using dns-prefetch](https://developer.mozilla.org/en-US/docs/Web/Performance/dns-prefetch)
|
17
|
+
|
18
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
19
|
+
|
20
|
+
<RsbuildConig />
|
@@ -1,9 +1,21 @@
|
|
1
1
|
---
|
2
2
|
title: preconnect
|
3
|
+
configName: performance.preconnect
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.preconnect
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `undefined | Array<string | PreconnectOption>`
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
interface PreconnectOption {
|
12
|
+
href: string;
|
13
|
+
crossorigin?: boolean;
|
14
|
+
}
|
15
|
+
```
|
16
|
+
|
17
|
+
- **默认值:** `undefined`
|
18
|
+
|
19
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
20
|
+
|
21
|
+
<RsbuildConig />
|
@@ -1,9 +1,26 @@
|
|
1
1
|
---
|
2
2
|
title: prefetch
|
3
|
+
configName: performance.prefetch
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.prefetch
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `undefined | true | PrefetchOption`
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type IncludeType = 'async-chunks' | 'initial' | 'all-assets' | 'all-chunks';
|
12
|
+
|
13
|
+
type Filter = Array<string | RegExp> | ((filename: string) => boolean);
|
14
|
+
|
15
|
+
interface PrefetchOption {
|
16
|
+
type?: IncludeType;
|
17
|
+
include?: Filter;
|
18
|
+
exclude?: Filter;
|
19
|
+
}
|
20
|
+
```
|
21
|
+
|
22
|
+
- **默认值:** `undefined`
|
23
|
+
|
24
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
25
|
+
|
26
|
+
<RsbuildConig />
|
@@ -1,9 +1,28 @@
|
|
1
1
|
---
|
2
2
|
title: preload
|
3
|
+
configName: performance.preload
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.preload
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `undefined | true | PreloadOption`
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type IncludeType = 'async-chunks' | 'initial' | 'all-assets' | 'all-chunks';
|
12
|
+
|
13
|
+
type Filter = Array<string | RegExp> | ((filename: string) => boolean);
|
14
|
+
|
15
|
+
interface PreloadOption {
|
16
|
+
type?: IncludeType;
|
17
|
+
include?: Filter;
|
18
|
+
exclude?: Filter;
|
19
|
+
}
|
20
|
+
```
|
21
|
+
|
22
|
+
- **默认值:** `undefined`
|
23
|
+
|
24
|
+
为 Rsbuild 构建生成的静态资源注入 [`<link rel="preload">`](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Attributes/rel/preload) 标签。
|
25
|
+
|
26
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
27
|
+
|
28
|
+
<RsbuildConig />
|
@@ -1,9 +1,45 @@
|
|
1
1
|
---
|
2
2
|
title: printFileSize
|
3
|
+
configName: performance.printFileSize
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.printFileSize
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:**
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type PrintFileSizeOptions =
|
12
|
+
| {
|
13
|
+
/**
|
14
|
+
* 是否输出所有静态资源文件的总体积
|
15
|
+
*/
|
16
|
+
total?: boolean;
|
17
|
+
/**
|
18
|
+
* 是否输出每个静态资源文件的体积
|
19
|
+
*/
|
20
|
+
detail?: boolean;
|
21
|
+
/**
|
22
|
+
* 是否输出 gzip 压缩后的体积
|
23
|
+
*/
|
24
|
+
compressed?: boolean;
|
25
|
+
}
|
26
|
+
| boolean;
|
27
|
+
```
|
28
|
+
|
29
|
+
- **默认值:** `true`
|
30
|
+
|
31
|
+
是否在生产环境构建后输出所有静态资源文件的体积。
|
32
|
+
|
33
|
+
```bash
|
34
|
+
info Production file sizes:
|
35
|
+
|
36
|
+
File Size Gzipped
|
37
|
+
dist/static/js/lib-react.09721b5c.js 152.6 kB 49.0 kB
|
38
|
+
dist/html/main/index.html 5.8 kB 2.5 kB
|
39
|
+
dist/static/js/main.3568a38e.js 3.5 kB 1.4 kB
|
40
|
+
dist/static/css/main.03221f72.css 1.4 kB 741 B
|
41
|
+
```
|
42
|
+
|
43
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
44
|
+
|
45
|
+
<RsbuildConig />
|
@@ -1,9 +1,15 @@
|
|
1
1
|
---
|
2
2
|
title: profile
|
3
|
+
configName: performance.profile
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.profile
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `boolean`
|
9
|
+
- **默认值:** `false`
|
8
10
|
|
9
|
-
|
11
|
+
是否捕获每个模块的耗时信息,对应 Rspack 的 [profile](https://webpack.js.org/configuration/other-options/#profile) 配置。
|
12
|
+
|
13
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
14
|
+
|
15
|
+
<RsbuildConig />
|
@@ -1,9 +1,15 @@
|
|
1
1
|
---
|
2
2
|
title: removeConsole
|
3
|
+
configName: performance.removeConsole
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.removeConsole
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `boolean | ConsoleType[]`
|
9
|
+
- **默认值:** `false`
|
8
10
|
|
9
|
-
|
11
|
+
在生产环境构建时,是否自动移除代码中的 `console.[methodName]`。
|
12
|
+
|
13
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
14
|
+
|
15
|
+
<RsbuildConig />
|
@@ -1,9 +1,15 @@
|
|
1
1
|
---
|
2
2
|
title: removeMomentLocale
|
3
|
+
configName: performance.removeMomentLocale
|
3
4
|
---
|
4
5
|
|
5
6
|
# performance.removeMomentLocale
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `boolean`
|
9
|
+
- **默认值:** `false`
|
8
10
|
|
9
|
-
|
11
|
+
是否移除 [moment.js](https://momentjs.com/) 的语言包文件。
|
12
|
+
|
13
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
14
|
+
|
15
|
+
<RsbuildConig />
|
@@ -4,6 +4,46 @@ title: transformLodash
|
|
4
4
|
|
5
5
|
# performance.transformLodash
|
6
6
|
|
7
|
-
|
7
|
+
- **类型:** `boolean`
|
8
|
+
- **默认值:** `true`
|
9
|
+
- **打包工具:** `仅支持 webpack`
|
8
10
|
|
9
|
-
|
11
|
+
是否模块化 [lodash](https://www.npmjs.com/package/lodash) 的导入,删除未使用的 lodash 模块,从而减少 lodash 代码体积。
|
12
|
+
|
13
|
+
这项优化基于 [babel-plugin-lodash](https://www.npmjs.com/package/babel-plugin-lodash) 和 [swc-plugin-lodash](https://github.com/web-infra-dev/swc-plugins/tree/main/crates/plugin_lodash) 实现。
|
14
|
+
|
15
|
+
### 示例
|
16
|
+
|
17
|
+
该选项默认开启,Modern.js 会自动将 `lodash` 的代码引用指向子路径。
|
18
|
+
|
19
|
+
比如:
|
20
|
+
|
21
|
+
```ts title="input.js"
|
22
|
+
import _ from 'lodash';
|
23
|
+
import { add } from 'lodash/fp';
|
24
|
+
|
25
|
+
const addOne = add(1);
|
26
|
+
_.map([1, 2, 3], addOne);
|
27
|
+
```
|
28
|
+
|
29
|
+
转换后的代码为:
|
30
|
+
|
31
|
+
```ts title="output.js"
|
32
|
+
import _add from 'lodash/fp/add';
|
33
|
+
import _map from 'lodash/map';
|
34
|
+
|
35
|
+
const addOne = _add(1);
|
36
|
+
_map([1, 2, 3], addOne);
|
37
|
+
```
|
38
|
+
|
39
|
+
### 关闭转换
|
40
|
+
|
41
|
+
在个别情况下,`lodash` 的 import 转换可能会生成不符合预期的代码,此时你可以手动关闭这项优化:
|
42
|
+
|
43
|
+
```js
|
44
|
+
export default {
|
45
|
+
performance: {
|
46
|
+
transformLodash: false,
|
47
|
+
},
|
48
|
+
};
|
49
|
+
```
|
@@ -15,7 +15,7 @@ sidebar_position: 9
|
|
15
15
|
|
16
16
|
该选项**用于配置框架插件**,如果你需要配置其他类型的插件,请选择对应的配置方式:
|
17
17
|
|
18
|
-
- 配置
|
18
|
+
- 配置 Rsbuild 插件,请使用 [builderPlugins](/configure/app/builder-plugins) 配置项。
|
19
19
|
- 配置 Rspack 或 webpack 插件,请使用 [tools.bundlerChain](/configure/app/tools/bundler-chain) 配置项。
|
20
20
|
- 配置 Babel 插件,请使用 [tools.babel](/configure/app/tools/babel) 配置项。
|
21
21
|
|
@@ -4,6 +4,70 @@ title: checkSyntax
|
|
4
4
|
|
5
5
|
# security.checkSyntax
|
6
6
|
|
7
|
-
|
7
|
+
- **类型:**
|
8
8
|
|
9
|
-
|
9
|
+
```ts
|
10
|
+
type CheckSyntax =
|
11
|
+
| boolean
|
12
|
+
| {
|
13
|
+
targets?: string[];
|
14
|
+
exclude?: RegExp | RegExp[];
|
15
|
+
ecmaVersion?: EcmaVersion;
|
16
|
+
};
|
17
|
+
```
|
18
|
+
|
19
|
+
- **默认值:** `false`
|
20
|
+
|
21
|
+
用于分析构建产物中是否存在当前浏览器范围下不兼容的高级语法。如果存在,会将详细信息打印在终端。
|
22
|
+
|
23
|
+
### 启用检测
|
24
|
+
|
25
|
+
你可以将 `checkSyntax` 设置为 `true` 来启用语法检测。
|
26
|
+
|
27
|
+
```ts
|
28
|
+
export default {
|
29
|
+
security: {
|
30
|
+
checkSyntax: true,
|
31
|
+
},
|
32
|
+
};
|
33
|
+
```
|
34
|
+
|
35
|
+
当你开启 `checkSyntax` 后,Modern.js 会在生产环境构建时进行检测,当在构建产物中检测到不兼容的高级语法后,会将错误日志打印在终端,并退出当前构建流程。
|
36
|
+
|
37
|
+
### 错误日志
|
38
|
+
|
39
|
+
错误日志的格式如下所示,包含代码来源文件、产物位置、错误原因、源代码等信息:
|
40
|
+
|
41
|
+
```bash
|
42
|
+
error [Syntax Checker] Find some syntax errors after production build:
|
43
|
+
|
44
|
+
Error 1
|
45
|
+
source: /node_modules/foo/index.js:1:0
|
46
|
+
output: /dist/static/js/main.3f7a4d7e.js:2:39400
|
47
|
+
reason: Unexpected token (1:178)
|
48
|
+
code:
|
49
|
+
9 |
|
50
|
+
10 | var b = 2;
|
51
|
+
11 |
|
52
|
+
> 12 | console.log(() => {
|
53
|
+
13 | return a + b;
|
54
|
+
14 | });
|
55
|
+
15 |
|
56
|
+
```
|
57
|
+
|
58
|
+
:::tip
|
59
|
+
目前语法检测是基于 AST parser 来实现的,每次检测时,只能找出文件中的第一个不兼容语法。如果一个文件中存在多个不兼容语法,你需要修复已发现的语法,并重新执行检测。
|
60
|
+
如果日志中没有显示对应的源码位置,可以尝试将 **output.disableMinimize** 设置为 true 后再重新构建。
|
61
|
+
:::
|
62
|
+
|
63
|
+
### 解决方法
|
64
|
+
|
65
|
+
当检测到语法错误后,你可以通过以下方式来处理:
|
66
|
+
|
67
|
+
- 如果你希望降级该语法,以保证代码具备良好的兼容性,可以通过 `source.include` 配置来编译相应的模块。
|
68
|
+
- 如果你不希望降级该语法,可以调整项目的 browserslist 范围,调整至与该语法相匹配的范围。
|
69
|
+
- 如果你不希望对某些产物进行语法检查,可用 `checkSyntax.exclude` 配置排除要检查的文件。
|
70
|
+
|
71
|
+
### 选项
|
72
|
+
|
73
|
+
`security.checkSyntax` 底层基于 `@rsbuild/plugin-check-syntax` 实现,具体选项可参考 [@rsbuild/plugin-check-syntax](https://github.com/rspack-contrib/rsbuild-plugin-check-syntax)。
|
@@ -1,9 +1,20 @@
|
|
1
1
|
---
|
2
2
|
title: nonce
|
3
|
+
configName: security.nonce
|
3
4
|
---
|
4
5
|
|
5
6
|
# security.nonce
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:**
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type Nonce = string;
|
12
|
+
```
|
13
|
+
|
14
|
+
- **默认值:** `undefined`
|
15
|
+
|
16
|
+
为 HTML 所引入的脚本资源添加随机属性值 nonce,使浏览器在解析到带有匹配 nonce 值的内联脚本时,能判断该脚本是否能执行。
|
17
|
+
|
18
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
19
|
+
|
20
|
+
<RsbuildConig />
|
@@ -1,9 +1,26 @@
|
|
1
1
|
---
|
2
2
|
title: sri
|
3
|
+
configName: security.sri
|
3
4
|
---
|
4
5
|
|
5
6
|
# security.sri
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:**
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type SriOptions = {
|
12
|
+
hashFuncNames?: [string, ...string[]];
|
13
|
+
enabled?: 'auto' | true | false;
|
14
|
+
hashLoading?: 'eager' | 'lazy'; // only support webpack
|
15
|
+
};
|
16
|
+
```
|
17
|
+
|
18
|
+
- **默认值:** `undefined`
|
19
|
+
|
20
|
+
为 HTML 所引入的 `<script>` 和 `<link rel="stylesheet">` 标签添加完整性属性 —— `integrity`,使浏览器能够验证引入资源的完整性,以此防止下载的资源被篡改。
|
21
|
+
|
22
|
+
:::info
|
23
|
+
SRI 的具体介绍可以参考 [Rsbuild security.sri](https://rsbuild.dev/zh/config/security/sri)。
|
24
|
+
|
25
|
+
该配置类型和 Rsbuild 不完全一致,在构建时将自动进行转换。
|
26
|
+
:::
|
@@ -25,15 +25,16 @@ export default defineConfig({
|
|
25
25
|
|
26
26
|
当值类型为 `Object` 时,可以配置如下属性:
|
27
27
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
| 属性 | 类型 | 默认值 | 描述 |
|
29
|
+
| ---------------- | ------------------------------------------------------------- | -------------------------------------- | ---------------------------------------------------------------------------- |
|
30
|
+
| mode | `string` | `string` | 默认为使用 `renderToString` 渲染。配置为 `stream` 开启流式渲染 |
|
31
|
+
| forceCSR | `boolean` | `false` | 默认关闭强制 CSR 渲染。配置为 `true` 后,在页面访问时添加 `?csr=true` 或添加请求头 `x-modern-ssr-fallback` 即可强制 CSR |
|
32
|
+
| inlineScript | `boolean` | `true` | 默认情况下,SSR 的数据会以内联脚本的方式注入到 HTML 中,并且直接赋值给全局变量。配置为 `false` 后,会下发 JSON,而不是赋值给全局变量,Streaming SSR 下,该配置不会生效 |
|
33
|
+
| disablePrerender | `boolean` | `fasle` | 为了兼容旧数据请求方式 - `useLoader`, 默认情况下 Modern.js 会对组件进行一次预渲染即有两次渲染 |
|
34
|
+
| unsafeHeaders | `string[]` | `[]` | 为了安全考虑,Modern.js 不会往 SSR_DATA 添加过多的内容。开发者可以通过该配置,对需要注入的 headers 进行配置 |
|
35
|
+
| scriptLoading | `defer \| blocking \| module \| async` | `defer` | 配置同 [html.scriptLoading](/configure/app/html/script-loading),支持 ssr 注入的 script 设置为 async 加载方式。优先级为 `ssr.scriptLoading` > `html.scriptLoading` |
|
36
|
+
| loaderFailureMode| `clientRender \| errorBoundary` | `errorBoundary` | 当 [data loader](/guides/basic-features/data/data-fetch.html#data-loader推荐) 中出错时,默认会渲染路由 [`Error`](/guides/basic-features/routes.html#错误处理) 组件,配置为 `'clientRender'` 时,有一个 data loader 抛错,就降级到客户端渲染,可以与 [Client Loader](/guides/basic-features/data/data-fetch.html#client-loader) 配合使用 |
|
37
|
+
|
37
38
|
|
38
39
|
```ts title="modern.config.ts"
|
39
40
|
export default defineConfig({
|
@@ -1,9 +1,15 @@
|
|
1
1
|
---
|
2
2
|
title: aliasStrategy
|
3
|
+
configName: source.aliasStrategy
|
3
4
|
---
|
4
5
|
|
5
6
|
# source.aliasStrategy
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:** `'prefer-tsconfig' | 'prefer-alias'`
|
9
|
+
- **默认值:** `'prefer-tsconfig'`
|
8
10
|
|
9
|
-
|
11
|
+
`source.aliasStrategy` 用于控制 `tsconfig.json` 中的 `paths` 选项与打包工具的 `alias` 选项的优先级。
|
12
|
+
|
13
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
14
|
+
|
15
|
+
<RsbuildConig />
|
@@ -1,9 +1,24 @@
|
|
1
1
|
---
|
2
2
|
title: alias
|
3
|
+
configName: source.alias
|
3
4
|
---
|
4
5
|
|
5
6
|
# source.alias
|
6
7
|
|
7
|
-
|
8
|
+
- **类型:**
|
8
9
|
|
9
|
-
|
10
|
+
```ts
|
11
|
+
type Alias = Record<string, string | false | (string | false)[]> | Function;
|
12
|
+
```
|
13
|
+
|
14
|
+
- **默认值:** `undefined`
|
15
|
+
|
16
|
+
设置文件引用的别名,对应 Rspack 的 [resolve.alias](https://webpack.js.org/configuration/resolve/#resolvealias) 配置。
|
17
|
+
|
18
|
+
:::tip
|
19
|
+
对于 TypeScript 项目,你只需要在 `tsconfig.json` 中配置 [compilerOptions.paths](https://www.typescriptlang.org/tsconfig#paths) 即可,Rsbuild 会自动识别它,不需要额外配置 `source.alias` 字段,详见 [「路径别名」](https://modernjs.dev/guides/basic-features/alias.html)。
|
20
|
+
:::
|
21
|
+
|
22
|
+
import RsbuildConig from '@site-docs/components/rsbuild-config-tooltip';
|
23
|
+
|
24
|
+
<RsbuildConig />
|