@modern-js/main-doc 2.69.4 → 3.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (540) hide show
  1. package/docs/en/{_meta.json → _nav.json} +5 -1
  2. package/docs/en/apis/app/commands.mdx +2 -3
  3. package/docs/en/apis/app/hooks/src/entry.mdx +1 -5
  4. package/docs/en/apis/app/hooks/src/entry.server.mdx +4 -5
  5. package/docs/en/apis/app/hooks/src/routes.mdx +2 -2
  6. package/docs/en/apis/app/runtime/_meta.json +0 -18
  7. package/docs/en/apis/app/runtime/bff/use-hono-context.mdx +2 -2
  8. package/docs/en/apis/app/runtime/router/router.mdx +1 -1
  9. package/docs/en/apis/app/runtime/utility/css-in-js.mdx +3 -2
  10. package/docs/en/community/blog/v2-release-note.mdx +0 -2
  11. package/docs/en/community/contributing-guide.mdx +10 -12
  12. package/docs/en/components/bff-upload.mdx +16 -12
  13. package/docs/en/components/build-output.mdx +45 -0
  14. package/docs/en/components/debug-app.mdx +1 -1
  15. package/docs/en/components/enable-bff-caution.mdx +2 -2
  16. package/docs/en/components/enable-bff.mdx +38 -8
  17. package/docs/en/components/enable-ssg.mdx +48 -0
  18. package/docs/en/components/entry-scan-logic.mdx +7 -0
  19. package/docs/en/components/init-app.mdx +40 -17
  20. package/docs/en/components/international/install-command.mdx +9 -0
  21. package/docs/en/components/international/introduce.mdx +2 -0
  22. package/docs/en/components/module-federation.mdx +4 -4
  23. package/docs/en/components/new-entry-tooltip.mdx +0 -0
  24. package/docs/en/components/nodeVersion.mdx +2 -6
  25. package/docs/en/components/prerequisites.mdx +1 -1
  26. package/docs/en/components/ua-polyfill.mdx +16 -12
  27. package/docs/en/components/upgrade-browserslist.mdx +0 -0
  28. package/docs/en/configure/_meta.json +7 -8
  29. package/docs/en/configure/app/bff/cross-project.mdx +24 -0
  30. package/docs/en/configure/app/dev/lazy-compilation.mdx +45 -0
  31. package/docs/en/configure/app/dev/server.mdx +103 -0
  32. package/docs/en/configure/app/dev/setup-middlewares.mdx +4 -22
  33. package/docs/en/configure/app/html/app-icon.mdx +1 -23
  34. package/docs/en/configure/app/output/inline-scripts.mdx +1 -1
  35. package/docs/en/configure/app/output/override-browserslist.mdx +6 -4
  36. package/docs/en/configure/app/output/source-map.mdx +6 -3
  37. package/docs/en/configure/app/output/ssg.mdx +12 -43
  38. package/docs/en/configure/app/output/ssgByEntries.mdx +93 -0
  39. package/docs/en/configure/app/performance/build-cache.mdx +0 -4
  40. package/docs/en/configure/app/resolve/alias-strategy.mdx +14 -0
  41. package/docs/en/configure/app/resolve/alias.mdx +13 -0
  42. package/docs/en/configure/app/resolve/condition-names.mdx +18 -0
  43. package/docs/en/configure/app/resolve/dedupe.mdx +13 -0
  44. package/docs/en/configure/app/resolve/extensions.mdx +18 -0
  45. package/docs/en/configure/app/runtime/0-intro.mdx +2 -51
  46. package/docs/en/configure/app/security/check-syntax.mdx +1 -1
  47. package/docs/en/configure/app/server/port.mdx +1 -21
  48. package/docs/en/configure/app/server/rsc.mdx +30 -0
  49. package/docs/en/configure/app/server/ssr.mdx +20 -9
  50. package/docs/en/configure/app/source/decorators.mdx +4 -2
  51. package/docs/en/configure/app/source/entries.mdx +0 -2
  52. package/docs/en/configure/app/source/main-entry-name.mdx +4 -4
  53. package/docs/en/configure/app/source/transform-import.mdx +1 -59
  54. package/docs/en/configure/app/tools/bundler-chain.mdx +5 -5
  55. package/docs/en/configure/app/tools/css-extract.mdx +1 -1
  56. package/docs/en/configure/app/tools/dev-server.mdx +14 -248
  57. package/docs/en/configure/app/tools/html-plugin.mdx +3 -3
  58. package/docs/en/configure/app/tools/lightningcss-loader.mdx +0 -1
  59. package/docs/en/configure/app/tools/swc.mdx +1 -43
  60. package/docs/en/configure/app/usage.mdx +7 -17
  61. package/docs/en/guides/_meta.json +1 -2
  62. package/docs/en/guides/advanced-features/_meta.json +6 -0
  63. package/docs/en/guides/advanced-features/bff/cross-project.mdx +1 -7
  64. package/docs/en/guides/advanced-features/bff/extend-server.mdx +18 -3
  65. package/docs/en/guides/advanced-features/bff/frameworks.mdx +1 -1
  66. package/docs/en/guides/advanced-features/bff/function.mdx +2 -6
  67. package/docs/en/guides/advanced-features/bff/sdk.mdx +3 -3
  68. package/docs/en/guides/advanced-features/build-performance.mdx +23 -26
  69. package/docs/en/guides/advanced-features/compatibility.mdx +53 -9
  70. package/docs/en/guides/advanced-features/international/_meta.json +11 -0
  71. package/docs/en/guides/advanced-features/international/advanced.mdx +193 -0
  72. package/docs/en/guides/advanced-features/international/api.mdx +400 -0
  73. package/docs/en/guides/advanced-features/international/basic.mdx +417 -0
  74. package/docs/en/guides/advanced-features/international/best-practices.mdx +135 -0
  75. package/docs/en/guides/advanced-features/international/configuration.mdx +437 -0
  76. package/docs/en/guides/advanced-features/international/locale-detection.mdx +276 -0
  77. package/docs/en/guides/advanced-features/international/quick-start.mdx +154 -0
  78. package/docs/en/guides/advanced-features/international/resource-loading.mdx +417 -0
  79. package/docs/en/guides/advanced-features/international/routing.mdx +212 -0
  80. package/docs/en/guides/advanced-features/international.mdx +37 -0
  81. package/docs/en/guides/advanced-features/low-level.mdx +21 -16
  82. package/docs/en/guides/advanced-features/page-performance/code-split.mdx +4 -4
  83. package/docs/en/guides/advanced-features/page-performance/inline-assets.mdx +4 -4
  84. package/docs/en/guides/advanced-features/page-performance/optimize-bundle.mdx +7 -21
  85. package/docs/en/guides/advanced-features/page-performance/react-compiler.mdx +1 -8
  86. package/docs/en/guides/advanced-features/rspack-start.mdx +2 -22
  87. package/docs/en/guides/advanced-features/server-monitor/logger.mdx +0 -4
  88. package/docs/en/guides/advanced-features/server-monitor/monitors.mdx +62 -34
  89. package/docs/en/guides/advanced-features/web-server.mdx +82 -299
  90. package/docs/en/guides/basic-features/_meta.json +6 -1
  91. package/docs/en/guides/basic-features/css/css-in-js.mdx +46 -11
  92. package/docs/en/guides/basic-features/css/css-modules.mdx +5 -17
  93. package/docs/en/guides/basic-features/css/css.mdx +3 -3
  94. package/docs/en/guides/basic-features/css/tailwindcss.mdx +5 -89
  95. package/docs/en/guides/basic-features/data/data-cache.mdx +5 -1
  96. package/docs/en/guides/basic-features/data/data-fetch.mdx +4 -4
  97. package/docs/en/guides/basic-features/data/data-write.mdx +2 -2
  98. package/docs/en/guides/basic-features/debug/mock.mdx +4 -1
  99. package/docs/en/guides/basic-features/debug/proxy.mdx +0 -8
  100. package/docs/en/guides/basic-features/debug/rsdoctor.mdx +5 -5
  101. package/docs/en/guides/basic-features/deploy.mdx +25 -18
  102. package/docs/en/guides/basic-features/env-vars.mdx +1 -1
  103. package/docs/en/guides/basic-features/html.mdx +1 -1
  104. package/docs/en/guides/basic-features/output-files.mdx +3 -3
  105. package/docs/en/guides/basic-features/render/_meta.json +1 -1
  106. package/docs/en/guides/basic-features/render/before-render.mdx +16 -23
  107. package/docs/en/guides/basic-features/render/overview.mdx +51 -0
  108. package/docs/en/guides/basic-features/render/rsc.mdx +394 -0
  109. package/docs/en/guides/basic-features/render/ssg.mdx +26 -62
  110. package/docs/en/guides/basic-features/render/ssr-cache.mdx +6 -6
  111. package/docs/en/guides/basic-features/render/ssr.mdx +31 -31
  112. package/docs/en/guides/basic-features/render/streaming-ssr.mdx +29 -9
  113. package/docs/en/guides/basic-features/routes/_meta.json +1 -0
  114. package/docs/en/guides/basic-features/routes/config-routes.mdx +427 -0
  115. package/docs/en/guides/basic-features/{routes.mdx → routes/routes.mdx} +7 -110
  116. package/docs/en/guides/basic-features/static-assets/json-files.mdx +21 -3
  117. package/docs/en/guides/basic-features/static-assets.mdx +2 -2
  118. package/docs/en/guides/concept/builder.mdx +24 -9
  119. package/docs/en/guides/concept/entries.mdx +139 -147
  120. package/docs/en/guides/get-started/glossary.mdx +0 -18
  121. package/docs/en/guides/get-started/introduction.mdx +1 -4
  122. package/docs/en/guides/get-started/quick-start.mdx +8 -73
  123. package/docs/en/guides/get-started/tech-stack.mdx +7 -25
  124. package/docs/en/guides/get-started/upgrade.mdx +30 -23
  125. package/docs/en/guides/topic-detail/_meta.json +0 -12
  126. package/docs/en/guides/topic-detail/module-federation/_meta.json +1 -1
  127. package/docs/en/guides/topic-detail/module-federation/application.mdx +16 -15
  128. package/docs/en/guides/topic-detail/module-federation/i18n.mdx +670 -0
  129. package/docs/en/guides/topic-detail/module-federation/introduce.mdx +5 -4
  130. package/docs/en/guides/topic-detail/module-federation/ssr.mdx +50 -2
  131. package/docs/en/guides/topic-detail/module-federation/usage.mdx +10 -30
  132. package/docs/en/guides/troubleshooting/builder.mdx +3 -82
  133. package/docs/en/guides/troubleshooting/cli.mdx +6 -30
  134. package/docs/en/guides/troubleshooting/dependencies.mdx +22 -22
  135. package/docs/en/plugin/cli-plugins/api.mdx +4 -5
  136. package/docs/en/plugin/cli-plugins/migration.mdx +33 -48
  137. package/docs/en/plugin/introduction.mdx +39 -27
  138. package/docs/en/plugin/official/_meta.json +0 -5
  139. package/docs/en/plugin/official/cli-plugins/_meta.json +1 -1
  140. package/docs/en/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
  141. package/docs/en/plugin/official/cli-plugins.mdx +0 -2
  142. package/docs/en/plugin/plugin-system.mdx +68 -61
  143. package/docs/en/plugin/runtime-plugins/api.mdx +62 -59
  144. package/docs/en/plugin/runtime-plugins/migration.mdx +29 -20
  145. package/docs/en/tutorials/_meta.json +0 -10
  146. package/docs/en/tutorials/examples/csr-auth.mdx +1 -1
  147. package/docs/en/tutorials/foundations/introduction.mdx +9 -25
  148. package/docs/zh/{_meta.json → _nav.json} +10 -6
  149. package/docs/zh/apis/app/commands.mdx +2 -3
  150. package/docs/zh/apis/app/hooks/src/entry.mdx +1 -5
  151. package/docs/zh/apis/app/hooks/src/entry.server.mdx +4 -5
  152. package/docs/zh/apis/app/hooks/src/routes.mdx +2 -2
  153. package/docs/zh/apis/app/runtime/_meta.json +0 -18
  154. package/docs/zh/apis/app/runtime/bff/use-hono-context.mdx +2 -2
  155. package/docs/zh/apis/app/runtime/utility/css-in-js.mdx +3 -2
  156. package/docs/zh/community/blog/v2-release-note.mdx +0 -2
  157. package/docs/zh/community/contributing-guide.mdx +10 -12
  158. package/docs/zh/components/auto-upgrade.mdx +0 -0
  159. package/docs/zh/components/bff-upload.mdx +8 -5
  160. package/docs/zh/components/build-output.mdx +45 -0
  161. package/docs/zh/components/debug-app.mdx +1 -1
  162. package/docs/zh/components/enable-bff-caution.mdx +1 -1
  163. package/docs/zh/components/enable-bff.mdx +37 -8
  164. package/docs/zh/components/enable-ssg.mdx +47 -0
  165. package/docs/zh/components/entry-scan-logic.mdx +7 -0
  166. package/docs/zh/components/init-app.mdx +40 -18
  167. package/docs/zh/components/international/install-command.mdx +8 -0
  168. package/docs/zh/components/international/introduce.mdx +2 -0
  169. package/docs/zh/components/international/platform-support.mdx +0 -0
  170. package/docs/zh/components/module-federation.mdx +4 -4
  171. package/docs/zh/components/new-entry-tooltip.mdx +0 -0
  172. package/docs/zh/components/nodeVersion.mdx +3 -7
  173. package/docs/zh/components/prerequisites.mdx +1 -1
  174. package/docs/zh/components/self-route-example.mdx +3 -3
  175. package/docs/zh/components/ua-polyfill.mdx +11 -6
  176. package/docs/zh/components/upgrade-browserslist.mdx +0 -0
  177. package/docs/zh/configure/_meta.json +7 -8
  178. package/docs/zh/configure/app/bff/cross-project.mdx +24 -0
  179. package/docs/zh/configure/app/dev/lazy-compilation.mdx +44 -0
  180. package/docs/zh/configure/app/dev/server.mdx +104 -0
  181. package/docs/zh/configure/app/dev/setup-middlewares.mdx +4 -23
  182. package/docs/zh/configure/app/html/app-icon.mdx +1 -23
  183. package/docs/zh/configure/app/output/inline-scripts.mdx +1 -1
  184. package/docs/zh/configure/app/output/override-browserslist.mdx +3 -3
  185. package/docs/zh/configure/app/output/source-map.mdx +10 -3
  186. package/docs/zh/configure/app/output/ssg.mdx +13 -45
  187. package/docs/zh/configure/app/output/ssgByEntries.mdx +94 -0
  188. package/docs/zh/configure/app/performance/build-cache.mdx +0 -4
  189. package/docs/zh/configure/app/resolve/alias-strategy.mdx +14 -0
  190. package/docs/zh/configure/app/resolve/alias.mdx +13 -0
  191. package/docs/zh/configure/app/resolve/condition-names.mdx +18 -0
  192. package/docs/zh/configure/app/resolve/dedupe.mdx +14 -0
  193. package/docs/zh/configure/app/resolve/extensions.mdx +18 -0
  194. package/docs/zh/configure/app/runtime/0-intro.mdx +2 -53
  195. package/docs/zh/configure/app/security/check-syntax.mdx +1 -1
  196. package/docs/zh/configure/app/server/port.mdx +2 -21
  197. package/docs/zh/configure/app/server/rsc.mdx +30 -0
  198. package/docs/zh/configure/app/server/ssr.mdx +21 -11
  199. package/docs/zh/configure/app/source/decorators.mdx +4 -4
  200. package/docs/zh/configure/app/source/entries.mdx +0 -2
  201. package/docs/zh/configure/app/source/main-entry-name.mdx +4 -4
  202. package/docs/zh/configure/app/source/transform-import.mdx +1 -59
  203. package/docs/zh/configure/app/tools/bundler-chain.mdx +6 -6
  204. package/docs/zh/configure/app/tools/css-extract.mdx +1 -1
  205. package/docs/zh/configure/app/tools/dev-server.mdx +14 -248
  206. package/docs/zh/configure/app/tools/html-plugin.mdx +3 -2
  207. package/docs/zh/configure/app/tools/lightningcss-loader.mdx +0 -1
  208. package/docs/zh/configure/app/tools/swc.mdx +1 -43
  209. package/docs/zh/configure/app/usage.mdx +8 -18
  210. package/docs/zh/guides/_meta.json +5 -1
  211. package/docs/zh/guides/advanced-features/_meta.json +6 -1
  212. package/docs/zh/guides/advanced-features/bff/cross-project.mdx +8 -16
  213. package/docs/zh/guides/advanced-features/bff/extend-server.mdx +25 -8
  214. package/docs/zh/guides/advanced-features/bff/frameworks.mdx +1 -1
  215. package/docs/zh/guides/advanced-features/bff/function.mdx +7 -12
  216. package/docs/zh/guides/advanced-features/bff/sdk.mdx +4 -4
  217. package/docs/zh/guides/advanced-features/build-performance.mdx +23 -30
  218. package/docs/zh/guides/advanced-features/compatibility.mdx +44 -0
  219. package/docs/zh/guides/advanced-features/international/_meta.json +11 -0
  220. package/docs/zh/guides/advanced-features/international/advanced.mdx +193 -0
  221. package/docs/zh/guides/advanced-features/international/api.mdx +400 -0
  222. package/docs/zh/guides/advanced-features/international/basic.mdx +416 -0
  223. package/docs/zh/guides/advanced-features/international/best-practices.mdx +135 -0
  224. package/docs/zh/guides/advanced-features/international/configuration.mdx +441 -0
  225. package/docs/zh/guides/advanced-features/international/locale-detection.mdx +304 -0
  226. package/docs/zh/guides/advanced-features/international/quick-start.mdx +149 -0
  227. package/docs/zh/guides/advanced-features/international/resource-loading.mdx +417 -0
  228. package/docs/zh/guides/advanced-features/international/routing.mdx +212 -0
  229. package/docs/zh/guides/advanced-features/international.mdx +36 -0
  230. package/docs/zh/guides/advanced-features/low-level.mdx +21 -16
  231. package/docs/zh/guides/advanced-features/page-performance/code-split.mdx +3 -3
  232. package/docs/zh/guides/advanced-features/page-performance/inline-assets.mdx +4 -4
  233. package/docs/zh/guides/advanced-features/page-performance/optimize-bundle.mdx +7 -21
  234. package/docs/zh/guides/advanced-features/page-performance/react-compiler.mdx +1 -8
  235. package/docs/zh/guides/advanced-features/server-monitor/logger.mdx +0 -4
  236. package/docs/zh/guides/advanced-features/server-monitor/monitors.mdx +63 -35
  237. package/docs/zh/guides/advanced-features/web-server.mdx +79 -300
  238. package/docs/zh/guides/basic-features/_meta.json +6 -1
  239. package/docs/zh/guides/basic-features/css/css-in-js.mdx +40 -5
  240. package/docs/zh/guides/basic-features/css/css-modules.mdx +6 -17
  241. package/docs/zh/guides/basic-features/css/css.mdx +2 -2
  242. package/docs/zh/guides/basic-features/css/tailwindcss.mdx +6 -90
  243. package/docs/zh/guides/basic-features/data/data-cache.mdx +8 -5
  244. package/docs/zh/guides/basic-features/data/data-fetch.mdx +6 -5
  245. package/docs/zh/guides/basic-features/data/data-write.mdx +4 -4
  246. package/docs/zh/guides/basic-features/debug/mock.mdx +4 -1
  247. package/docs/zh/guides/basic-features/debug/proxy.mdx +0 -8
  248. package/docs/zh/guides/basic-features/debug/rsdoctor.mdx +6 -6
  249. package/docs/zh/guides/basic-features/deploy.mdx +24 -20
  250. package/docs/zh/guides/basic-features/env-vars.mdx +1 -1
  251. package/docs/zh/guides/basic-features/html.mdx +2 -2
  252. package/docs/zh/guides/basic-features/output-files.mdx +3 -3
  253. package/docs/zh/guides/basic-features/render/_meta.json +1 -1
  254. package/docs/zh/guides/basic-features/render/before-render.mdx +17 -24
  255. package/docs/zh/guides/basic-features/render/overview.mdx +52 -0
  256. package/docs/zh/guides/basic-features/render/rsc.mdx +413 -0
  257. package/docs/zh/guides/basic-features/render/ssg.mdx +27 -69
  258. package/docs/zh/guides/basic-features/render/ssr-cache.mdx +5 -5
  259. package/docs/zh/guides/basic-features/render/ssr.mdx +34 -31
  260. package/docs/zh/guides/basic-features/render/streaming-ssr.mdx +34 -14
  261. package/docs/zh/guides/basic-features/routes/_meta.json +1 -0
  262. package/docs/zh/guides/basic-features/routes/config-routes.mdx +426 -0
  263. package/docs/zh/guides/basic-features/{routes.mdx → routes/routes.mdx} +8 -114
  264. package/docs/zh/guides/basic-features/static-assets/json-files.mdx +21 -3
  265. package/docs/zh/guides/basic-features/static-assets.mdx +2 -2
  266. package/docs/zh/guides/basic-features/testing/cypress.mdx +5 -5
  267. package/docs/zh/guides/basic-features/testing/jest.mdx +12 -12
  268. package/docs/zh/guides/concept/builder.mdx +24 -9
  269. package/docs/zh/guides/concept/entries.mdx +95 -92
  270. package/docs/zh/guides/get-started/glossary.mdx +0 -18
  271. package/docs/zh/guides/get-started/introduction.mdx +1 -5
  272. package/docs/zh/guides/get-started/quick-start.mdx +5 -72
  273. package/docs/zh/guides/get-started/tech-stack.mdx +8 -26
  274. package/docs/zh/guides/get-started/upgrade.mdx +30 -23
  275. package/docs/zh/guides/topic-detail/_meta.json +0 -12
  276. package/docs/zh/guides/topic-detail/module-federation/_meta.json +1 -1
  277. package/docs/zh/guides/topic-detail/module-federation/application.mdx +18 -16
  278. package/docs/zh/guides/topic-detail/module-federation/i18n.mdx +623 -0
  279. package/docs/zh/guides/topic-detail/module-federation/introduce.mdx +4 -4
  280. package/docs/zh/guides/topic-detail/module-federation/ssr.mdx +51 -5
  281. package/docs/zh/guides/topic-detail/module-federation/usage.mdx +11 -32
  282. package/docs/zh/guides/troubleshooting/builder.mdx +3 -84
  283. package/docs/zh/guides/troubleshooting/cli.mdx +6 -30
  284. package/docs/zh/guides/troubleshooting/dependencies.mdx +23 -23
  285. package/docs/zh/guides/upgrade/_meta.json +1 -0
  286. package/docs/zh/guides/upgrade/config.mdx +809 -0
  287. package/docs/zh/guides/upgrade/entry.mdx +463 -0
  288. package/docs/zh/guides/upgrade/other.md +90 -0
  289. package/docs/zh/guides/upgrade/overview.mdx +36 -0
  290. package/docs/zh/guides/upgrade/tailwindcss.mdx +130 -0
  291. package/docs/zh/guides/upgrade/web-server.md +93 -0
  292. package/docs/zh/plugin/cli-plugins/api.mdx +4 -5
  293. package/docs/zh/plugin/cli-plugins/migration.mdx +30 -45
  294. package/docs/zh/plugin/introduction.mdx +36 -24
  295. package/docs/zh/plugin/official/_meta.json +0 -5
  296. package/docs/zh/plugin/official/cli-plugins/_meta.json +1 -1
  297. package/docs/zh/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
  298. package/docs/zh/plugin/official/cli-plugins.mdx +0 -2
  299. package/docs/zh/plugin/plugin-system.mdx +45 -42
  300. package/docs/zh/plugin/runtime-plugins/api.mdx +58 -56
  301. package/docs/zh/plugin/runtime-plugins/migration.mdx +26 -17
  302. package/docs/zh/tutorials/_meta.json +0 -10
  303. package/docs/zh/tutorials/examples/csr-auth.mdx +1 -1
  304. package/docs/zh/tutorials/foundations/introduction.mdx +8 -25
  305. package/i18n.json +0 -16
  306. package/package.json +12 -12
  307. package/rspress.config.ts +5 -8
  308. package/src/components/ContentCard/index.module.scss +11 -7
  309. package/src/components/ContentCard/index.tsx +1 -1
  310. package/src/components/FeatureLayout/index.module.css +1 -1
  311. package/src/components/Footer/index.tsx +2 -14
  312. package/src/components/Footer/styles.module.scss +5 -5
  313. package/src/components/ListCard/index.tsx +1 -1
  314. package/src/components/RandomMemberList/index.tsx +1 -1
  315. package/src/components/RsbuildLink/index.tsx +1 -1
  316. package/src/components/Sandpack/index.tsx +1 -1
  317. package/src/custom.scss +15 -0
  318. package/src/i18n/enUS.ts +2 -4
  319. package/src/i18n/index.ts +1 -1
  320. package/src/i18n/zhCN.ts +2 -4
  321. package/src/index.ts +2 -1
  322. package/src/pages/index.module.scss +59 -41
  323. package/src/pages/index.tsx +9 -24
  324. package/docs/en/apis/app/hooks/server/index_.mdx +0 -10
  325. package/docs/en/apis/app/hooks/src/index_.mdx +0 -38
  326. package/docs/en/apis/app/hooks/src/stories.mdx +0 -16
  327. package/docs/en/apis/app/runtime/app/define-config.mdx +0 -67
  328. package/docs/en/apis/app/runtime/core/bootstrap.mdx +0 -74
  329. package/docs/en/apis/app/runtime/core/create-app.mdx +0 -49
  330. package/docs/en/apis/app/runtime/core/use-loader.mdx +0 -89
  331. package/docs/en/apis/app/runtime/core/use-module-apps.mdx +0 -140
  332. package/docs/en/apis/app/runtime/core/use-runtime-context.mdx +0 -116
  333. package/docs/en/apis/app/runtime/model/Provider.mdx +0 -36
  334. package/docs/en/apis/app/runtime/model/auto-actions.mdx +0 -122
  335. package/docs/en/apis/app/runtime/model/connect.mdx +0 -146
  336. package/docs/en/apis/app/runtime/model/create-app.mdx +0 -75
  337. package/docs/en/apis/app/runtime/model/create-store.mdx +0 -61
  338. package/docs/en/apis/app/runtime/model/handle-effect.mdx +0 -107
  339. package/docs/en/apis/app/runtime/model/model_.mdx +0 -198
  340. package/docs/en/apis/app/runtime/model/use-local-model.mdx +0 -29
  341. package/docs/en/apis/app/runtime/model/use-model.mdx +0 -89
  342. package/docs/en/apis/app/runtime/model/use-static-model.mdx +0 -51
  343. package/docs/en/apis/app/runtime/model/use-store.mdx +0 -26
  344. package/docs/en/apis/app/runtime/ssr/pre-render.mdx +0 -96
  345. package/docs/en/apis/app/runtime/web-server/hook.mdx +0 -134
  346. package/docs/en/apis/app/runtime/web-server/middleware.mdx +0 -113
  347. package/docs/en/apis/app/runtime/web-server/unstable_middleware.mdx +0 -167
  348. package/docs/en/components/bff-proxy-path-rewrite.mdx +0 -16
  349. package/docs/en/components/bff-proxy-principle.mdx +0 -1
  350. package/docs/en/components/builder.mdx +0 -3
  351. package/docs/en/components/create-bff-api-app.mdx +0 -25
  352. package/docs/en/components/custom-router-micro-frontend.mdx +0 -40
  353. package/docs/en/components/enable-micro-frontend.mdx +0 -30
  354. package/docs/en/components/enableSwc.mdx +0 -17
  355. package/docs/en/components/global-proxy-config.mdx +0 -85
  356. package/docs/en/components/global-proxy.mdx +0 -29
  357. package/docs/en/components/package-manager.mdx +0 -11
  358. package/docs/en/components/reduck-notify.mdx +0 -27
  359. package/docs/en/components/reduck-tip.mdx +0 -8
  360. package/docs/en/configure/app/auto-load-plugin.mdx +0 -66
  361. package/docs/en/configure/app/deploy/microFrontend.mdx +0 -53
  362. package/docs/en/configure/app/dev/port.mdx +0 -25
  363. package/docs/en/configure/app/dev/proxy.mdx +0 -9
  364. package/docs/en/configure/app/experiments/lazy-compilation.mdx +0 -106
  365. package/docs/en/configure/app/html/disable-html-folder.mdx +0 -46
  366. package/docs/en/configure/app/html/favicon-by-entries.mdx +0 -36
  367. package/docs/en/configure/app/html/inject-by-entries.mdx +0 -36
  368. package/docs/en/configure/app/html/meta-by-entries.mdx +0 -48
  369. package/docs/en/configure/app/html/tags-by-entries.mdx +0 -44
  370. package/docs/en/configure/app/html/template-by-entries.mdx +0 -33
  371. package/docs/en/configure/app/html/template-parameters-by-entries.mdx +0 -35
  372. package/docs/en/configure/app/html/title-by-entries.mdx +0 -37
  373. package/docs/en/configure/app/output/css-module-local-ident-name.mdx +0 -21
  374. package/docs/en/configure/app/output/disable-css-extract.mdx +0 -16
  375. package/docs/en/configure/app/output/disable-filename-hash.mdx +0 -16
  376. package/docs/en/configure/app/output/disable-minimize.mdx +0 -14
  377. package/docs/en/configure/app/output/disable-node-polyfill.mdx +0 -22
  378. package/docs/en/configure/app/output/disable-source-map.mdx +0 -31
  379. package/docs/en/configure/app/output/enable-asset-fallback.mdx +0 -36
  380. package/docs/en/configure/app/output/enable-inline-scripts.mdx +0 -22
  381. package/docs/en/configure/app/output/enable-inline-styles.mdx +0 -22
  382. package/docs/en/configure/app/output/enable-latest-decorators.mdx +0 -14
  383. package/docs/en/configure/app/performance/transform-lodash.mdx +0 -52
  384. package/docs/en/configure/app/runtime/master-app.mdx +0 -36
  385. package/docs/en/configure/app/runtime/state.mdx +0 -52
  386. package/docs/en/configure/app/source/disable-entry-dirs.mdx +0 -38
  387. package/docs/en/configure/app/source/enable-custom-entry.mdx +0 -68
  388. package/docs/en/configure/app/source/module-scopes.mdx +0 -72
  389. package/docs/en/configure/app/source/resolve-extension-prefix.mdx +0 -55
  390. package/docs/en/configure/app/source/resolve-main-fields.mdx +0 -46
  391. package/docs/en/configure/app/tools/esbuild.mdx +0 -44
  392. package/docs/en/configure/app/tools/pug.mdx +0 -54
  393. package/docs/en/configure/app/tools/styled-components.mdx +0 -55
  394. package/docs/en/configure/app/tools/tailwindcss.mdx +0 -98
  395. package/docs/en/configure/app/tools/terser.mdx +0 -58
  396. package/docs/en/configure/app/tools/ts-loader.mdx +0 -76
  397. package/docs/en/configure/app/tools/webpack-chain.mdx +0 -249
  398. package/docs/en/configure/app/tools/webpack.mdx +0 -305
  399. package/docs/en/guides/deprecated.md +0 -17
  400. package/docs/en/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -27
  401. package/docs/en/guides/topic-detail/micro-frontend/c02-development.mdx +0 -290
  402. package/docs/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -298
  403. package/docs/en/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -58
  404. package/docs/en/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -26
  405. package/docs/en/guides/topic-detail/model/_meta.json +0 -14
  406. package/docs/en/guides/topic-detail/model/auto-actions.mdx +0 -85
  407. package/docs/en/guides/topic-detail/model/computed-state.mdx +0 -148
  408. package/docs/en/guides/topic-detail/model/define-model.mdx +0 -62
  409. package/docs/en/guides/topic-detail/model/faq.mdx +0 -35
  410. package/docs/en/guides/topic-detail/model/manage-effects.mdx +0 -247
  411. package/docs/en/guides/topic-detail/model/model-communicate.mdx +0 -217
  412. package/docs/en/guides/topic-detail/model/performance.mdx +0 -167
  413. package/docs/en/guides/topic-detail/model/quick-start.mdx +0 -117
  414. package/docs/en/guides/topic-detail/model/redux-integration.mdx +0 -20
  415. package/docs/en/guides/topic-detail/model/typescript-best-practice.mdx +0 -68
  416. package/docs/en/guides/topic-detail/model/use-model.mdx +0 -243
  417. package/docs/en/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -46
  418. package/docs/en/plugin/official/cli-plugins/plugin-swc.mdx +0 -363
  419. package/docs/en/plugin/official/cli-plugins/plugin-tailwind.mdx +0 -5
  420. package/docs/en/plugin/official/rsbuild-plugins/_meta.json +0 -1
  421. package/docs/en/plugin/official/rsbuild-plugins/plugin-esbuild.mdx +0 -205
  422. package/docs/en/plugin/official/rsbuild-plugins.mdx +0 -3
  423. package/docs/en/tutorials/first-app/c01-start.mdx +0 -99
  424. package/docs/en/tutorials/first-app/c02-component.mdx +0 -60
  425. package/docs/en/tutorials/first-app/c03-css.mdx +0 -324
  426. package/docs/en/tutorials/first-app/c04-routes.mdx +0 -172
  427. package/docs/en/tutorials/first-app/c05-loader.mdx +0 -87
  428. package/docs/en/tutorials/first-app/c06-model.mdx +0 -278
  429. package/docs/en/tutorials/first-app/c07-container.mdx +0 -281
  430. package/docs/en/tutorials/first-app/c08-entries.mdx +0 -135
  431. package/docs/zh/apis/app/hooks/server/index_.mdx +0 -10
  432. package/docs/zh/apis/app/hooks/src/index_.mdx +0 -39
  433. package/docs/zh/apis/app/hooks/src/stories.mdx +0 -16
  434. package/docs/zh/apis/app/runtime/app/define-config.mdx +0 -67
  435. package/docs/zh/apis/app/runtime/core/bootstrap.mdx +0 -74
  436. package/docs/zh/apis/app/runtime/core/create-app.mdx +0 -35
  437. package/docs/zh/apis/app/runtime/core/use-loader.mdx +0 -89
  438. package/docs/zh/apis/app/runtime/core/use-module-apps.mdx +0 -179
  439. package/docs/zh/apis/app/runtime/core/use-runtime-context.mdx +0 -116
  440. package/docs/zh/apis/app/runtime/model/Provider.mdx +0 -36
  441. package/docs/zh/apis/app/runtime/model/auto-actions.mdx +0 -122
  442. package/docs/zh/apis/app/runtime/model/connect.mdx +0 -143
  443. package/docs/zh/apis/app/runtime/model/create-app.mdx +0 -75
  444. package/docs/zh/apis/app/runtime/model/create-store.mdx +0 -61
  445. package/docs/zh/apis/app/runtime/model/handle-effect.mdx +0 -108
  446. package/docs/zh/apis/app/runtime/model/model_.mdx +0 -201
  447. package/docs/zh/apis/app/runtime/model/use-local-model.mdx +0 -29
  448. package/docs/zh/apis/app/runtime/model/use-model.mdx +0 -89
  449. package/docs/zh/apis/app/runtime/model/use-static-model.mdx +0 -49
  450. package/docs/zh/apis/app/runtime/model/use-store.mdx +0 -26
  451. package/docs/zh/apis/app/runtime/ssr/pre-render.mdx +0 -96
  452. package/docs/zh/apis/app/runtime/web-server/hook.mdx +0 -136
  453. package/docs/zh/apis/app/runtime/web-server/middleware.mdx +0 -114
  454. package/docs/zh/apis/app/runtime/web-server/unstable_middleware.mdx +0 -165
  455. package/docs/zh/components/bff-proxy-path-rewrite.mdx +0 -16
  456. package/docs/zh/components/bff-proxy-principle.mdx +0 -1
  457. package/docs/zh/components/builder.mdx +0 -3
  458. package/docs/zh/components/create-bff-api-app.mdx +0 -25
  459. package/docs/zh/components/custom-router-micro-frontend.mdx +0 -40
  460. package/docs/zh/components/enable-micro-frontend.mdx +0 -30
  461. package/docs/zh/components/enableSwc.mdx +0 -17
  462. package/docs/zh/components/global-proxy-config.mdx +0 -85
  463. package/docs/zh/components/global-proxy.mdx +0 -29
  464. package/docs/zh/components/package-manager.mdx +0 -11
  465. package/docs/zh/components/reduck-notify.mdx +0 -27
  466. package/docs/zh/components/reduck-tip.mdx +0 -8
  467. package/docs/zh/configure/app/auto-load-plugin.mdx +0 -66
  468. package/docs/zh/configure/app/deploy/microFrontend.mdx +0 -55
  469. package/docs/zh/configure/app/dev/port.mdx +0 -25
  470. package/docs/zh/configure/app/dev/proxy.mdx +0 -9
  471. package/docs/zh/configure/app/experiments/lazy-compilation.mdx +0 -105
  472. package/docs/zh/configure/app/html/disable-html-folder.mdx +0 -45
  473. package/docs/zh/configure/app/html/favicon-by-entries.mdx +0 -37
  474. package/docs/zh/configure/app/html/inject-by-entries.mdx +0 -37
  475. package/docs/zh/configure/app/html/meta-by-entries.mdx +0 -48
  476. package/docs/zh/configure/app/html/tags-by-entries.mdx +0 -44
  477. package/docs/zh/configure/app/html/template-by-entries.mdx +0 -33
  478. package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +0 -36
  479. package/docs/zh/configure/app/html/title-by-entries.mdx +0 -37
  480. package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +0 -21
  481. package/docs/zh/configure/app/output/disable-css-extract.mdx +0 -16
  482. package/docs/zh/configure/app/output/disable-filename-hash.mdx +0 -16
  483. package/docs/zh/configure/app/output/disable-minimize.mdx +0 -14
  484. package/docs/zh/configure/app/output/disable-node-polyfill.mdx +0 -22
  485. package/docs/zh/configure/app/output/disable-source-map.mdx +0 -31
  486. package/docs/zh/configure/app/output/enable-asset-fallback.mdx +0 -36
  487. package/docs/zh/configure/app/output/enable-inline-scripts.mdx +0 -22
  488. package/docs/zh/configure/app/output/enable-inline-styles.mdx +0 -22
  489. package/docs/zh/configure/app/output/enable-latest-decorators.mdx +0 -14
  490. package/docs/zh/configure/app/performance/transform-lodash.mdx +0 -52
  491. package/docs/zh/configure/app/runtime/master-app.mdx +0 -38
  492. package/docs/zh/configure/app/runtime/state.mdx +0 -52
  493. package/docs/zh/configure/app/source/disable-entry-dirs.mdx +0 -38
  494. package/docs/zh/configure/app/source/enable-custom-entry.mdx +0 -67
  495. package/docs/zh/configure/app/source/module-scopes.mdx +0 -72
  496. package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +0 -57
  497. package/docs/zh/configure/app/source/resolve-main-fields.mdx +0 -46
  498. package/docs/zh/configure/app/tools/esbuild.mdx +0 -44
  499. package/docs/zh/configure/app/tools/pug.mdx +0 -54
  500. package/docs/zh/configure/app/tools/styled-components.mdx +0 -54
  501. package/docs/zh/configure/app/tools/tailwindcss.mdx +0 -98
  502. package/docs/zh/configure/app/tools/terser.mdx +0 -58
  503. package/docs/zh/configure/app/tools/ts-loader.mdx +0 -76
  504. package/docs/zh/configure/app/tools/webpack-chain.mdx +0 -253
  505. package/docs/zh/configure/app/tools/webpack.mdx +0 -305
  506. package/docs/zh/guides/advanced-features/rspack-start.mdx +0 -154
  507. package/docs/zh/guides/deprecated.md +0 -19
  508. package/docs/zh/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -26
  509. package/docs/zh/guides/topic-detail/micro-frontend/c02-development.mdx +0 -332
  510. package/docs/zh/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -296
  511. package/docs/zh/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -58
  512. package/docs/zh/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -27
  513. package/docs/zh/guides/topic-detail/model/_meta.json +0 -14
  514. package/docs/zh/guides/topic-detail/model/auto-actions.mdx +0 -88
  515. package/docs/zh/guides/topic-detail/model/computed-state.mdx +0 -147
  516. package/docs/zh/guides/topic-detail/model/define-model.mdx +0 -63
  517. package/docs/zh/guides/topic-detail/model/faq.mdx +0 -36
  518. package/docs/zh/guides/topic-detail/model/manage-effects.mdx +0 -256
  519. package/docs/zh/guides/topic-detail/model/model-communicate.mdx +0 -217
  520. package/docs/zh/guides/topic-detail/model/performance.mdx +0 -167
  521. package/docs/zh/guides/topic-detail/model/quick-start.mdx +0 -117
  522. package/docs/zh/guides/topic-detail/model/redux-integration.mdx +0 -20
  523. package/docs/zh/guides/topic-detail/model/typescript-best-practice.mdx +0 -67
  524. package/docs/zh/guides/topic-detail/model/use-model.mdx +0 -248
  525. package/docs/zh/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -46
  526. package/docs/zh/plugin/official/cli-plugins/plugin-swc.mdx +0 -351
  527. package/docs/zh/plugin/official/cli-plugins/plugin-tailwind.mdx +0 -5
  528. package/docs/zh/plugin/official/rsbuild-plugins/_meta.json +0 -1
  529. package/docs/zh/plugin/official/rsbuild-plugins/plugin-esbuild.mdx +0 -201
  530. package/docs/zh/plugin/official/rsbuild-plugins.mdx +0 -3
  531. package/docs/zh/tutorials/first-app/c01-start.mdx +0 -99
  532. package/docs/zh/tutorials/first-app/c02-component.mdx +0 -60
  533. package/docs/zh/tutorials/first-app/c03-css.mdx +0 -323
  534. package/docs/zh/tutorials/first-app/c04-routes.mdx +0 -172
  535. package/docs/zh/tutorials/first-app/c05-loader.mdx +0 -89
  536. package/docs/zh/tutorials/first-app/c06-model.mdx +0 -274
  537. package/docs/zh/tutorials/first-app/c07-container.mdx +0 -281
  538. package/docs/zh/tutorials/first-app/c08-entries.mdx +0 -135
  539. /package/docs/en/components/{reduck-migration.mdx → auto-upgrade.mdx} +0 -0
  540. /package/docs/{zh/components/reduck-migration.mdx → en/components/international/platform-support.mdx} +0 -0
@@ -11,10 +11,19 @@ title: ssg
11
11
 
12
12
  :::tip 开启 SSG 功能
13
13
  此配置需要在开启 SSG 功能情况下才会生效。请阅读 [静态站点生成](/guides/basic-features/render/ssg) 文档了解如何开启 SSG 功能及使用场景。
14
+
14
15
  :::
15
16
 
16
17
  :::info 前置阅读
17
- SSG 功能使用与路由关联性较大,建议使用前先了解[路由方案](/guides/basic-features/routes)。
18
+ SSG 功能使用与路由关联性较大,建议使用前先了解[路由方案](/guides/basic-features/routes/routes)。
19
+
20
+ :::
21
+
22
+ :::info
23
+ - 单入口建议使用 `output.ssg`。
24
+ - 多入口建议优先使用 `output.ssgByEntries`。
25
+ - 当 `output.ssg` 为 `true` 且未配置 `output.ssgByEntries` 时,所有入口下的所有路由都会作为 SSG 路由处理。
26
+
18
27
  :::
19
28
 
20
29
  ## Boolean 类型
@@ -29,36 +38,6 @@ export default defineConfig({
29
38
  });
30
39
  ```
31
40
 
32
- `output.ssg` 也可以按照入口配置,配置生效的规则同样由入口路由方式决定。
33
-
34
- 例如以下目录结构,分别存在约定式路由入口 `entryA` 和自控式路由入口 `entryB`:
35
-
36
- ```bash
37
- .
38
- └── src
39
- ├── entryA
40
- │ └── routes
41
- └── entryB
42
- └── App.tsx
43
- ```
44
-
45
- 你可以指定 `entryA` 和 `entryB` 的不同 SSG 配置:
46
-
47
- ```js
48
- export default defineConfig({
49
- output: {
50
- ssg: {
51
- entryA: true,
52
- entryB: false,
53
- },
54
- },
55
- });
56
- ```
57
-
58
- :::info
59
- 更多关于**约定式路由**和**自控式路由**在开启 SSG 后的默认行为,请阅读 [静态站点生成](/guides/basic-features/render/ssg) 。
60
- :::
61
-
62
41
  ## Object 类型
63
42
 
64
43
  当值类型为 `Object` 时,可以配置如下属性。
@@ -70,12 +49,10 @@ type SSGRouteOptions =
70
49
  | string
71
50
  | {
72
51
  url: string;
73
- params?: Record<string, any>[];
74
52
  headers?: Record<string, any>;
75
53
  };
76
54
 
77
55
  type SSGOptions = {
78
- preventDefault?: string[];
79
56
  headers?: Record<string, any>;
80
57
  routes?: SSGRouteOptions[];
81
58
  };
@@ -85,9 +62,9 @@ type SSGOptions = {
85
62
 
86
63
  下面的示例配置中,SSG 会渲染 `/`、`/about` 和 `/user/:id` 三条路由对应的页面。
87
64
 
88
- 对于 `/user/:id` 路由,`cookies` 添加到请求头中,同时会将 `params` 中的 `id` 替换为 `modernjs`。
65
+ 对于 `/user/:id` 路由,会在请求头中添加 `cookies`,并指定具体的路径。
89
66
 
90
- ```ts title="modern.config.ts"
67
+ ```ts title="modern.config.ts(单入口)"
91
68
  export default defineConfig({
92
69
  output: {
93
70
  ssg: {
@@ -95,22 +72,13 @@ export default defineConfig({
95
72
  '/',
96
73
  '/about',
97
74
  {
98
- url: '/user/:id',
75
+ url: '/user/modernjs',
99
76
  headers: {
100
77
  cookies: 'name=modernjs',
101
78
  },
102
- params: [
103
- {
104
- id: 'modernjs',
105
- },
106
- ],
107
79
  },
108
80
  ],
109
81
  },
110
82
  },
111
83
  });
112
84
  ```
113
-
114
- :::note
115
- 多入口的情况和单入口的配置方式一致,这里不再额外介绍。
116
- :::
@@ -0,0 +1,94 @@
1
+ ---
2
+ title: ssgByEntries
3
+ ---
4
+
5
+ # output.ssgByEntries
6
+
7
+ - **类型:** `Record<string, boolean | object>`
8
+ - **默认值:** `undefined`
9
+
10
+ 在多入口应用中,为每个入口分别配置 SSG。
11
+
12
+ :::info
13
+ - 单入口建议使用 `output.ssg`。
14
+ - 多入口建议优先使用 `output.ssgByEntries`。
15
+ - 当 `output.ssg` 为 `true` 且未配置 `output.ssgByEntries` 时,所有入口下的所有路由都会作为 SSG 路由处理。
16
+
17
+ :::
18
+
19
+
20
+ ## 配置类型
21
+
22
+ ```ts
23
+ type SSGRouteOptions =
24
+ | string
25
+ | {
26
+ url: string;
27
+ headers?: Record<string, any>;
28
+ };
29
+
30
+ type SSGOptions = {
31
+ headers?: Record<string, any>;
32
+ routes?: SSGRouteOptions[];
33
+ };
34
+
35
+ // ssgByEntries 类型
36
+ type SSGMultiEntryOptions = Record<string, boolean | SSGOptions>;
37
+ ```
38
+
39
+ ## 示例
40
+
41
+ ### 按入口启用/禁用 SSG
42
+
43
+ ```ts title="modern.config.ts"
44
+ export default defineConfig({
45
+ output: {
46
+ ssgByEntries: {
47
+ home: true,
48
+ admin: false,
49
+ },
50
+ },
51
+ });
52
+ ```
53
+
54
+ ### 按入口配置具体路由
55
+
56
+ ```ts title="modern.config.ts"
57
+ export default defineConfig({
58
+ output: {
59
+ ssgByEntries: {
60
+ home: {
61
+ routes: ['/', '/about', '/user/modernjs'],
62
+ },
63
+ admin: {
64
+ routes: ['/', '/dashboard'],
65
+ },
66
+ },
67
+ },
68
+ });
69
+ ```
70
+
71
+ ### 配置入口或路由请求头
72
+
73
+ ```ts title="modern.config.ts"
74
+ export default defineConfig({
75
+ output: {
76
+ ssgByEntries: {
77
+ home: {
78
+ headers: {
79
+ 'x-tt-env': 'ppe_modernjs',
80
+ },
81
+ routes: [
82
+ '/',
83
+ {
84
+ url: '/about',
85
+ headers: {
86
+ from: 'modern-website',
87
+ },
88
+ },
89
+ ],
90
+ },
91
+ },
92
+ },
93
+ });
94
+ ```
@@ -38,10 +38,6 @@ export default {
38
38
  };
39
39
  ```
40
40
 
41
- ::: warning
42
- 从 `v2.69.0` 版本开始,Modern.js rspack 构建将默认开启 buildCache,之前版本需要手动配置开启。
43
- :::
44
-
45
41
  import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
46
42
 
47
43
  <RsbuildConfig configName="performance.buildCache" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: aliasStrategy
3
+ ---
4
+
5
+ # resolve.aliasStrategy
6
+
7
+ - **类型:** `'prefer-tsconfig' | 'prefer-alias'`
8
+ - **默认值:** `'prefer-tsconfig'`
9
+
10
+ 设置路径别名解析的策略,用于控制 `tsconfig.json` 中的 paths 选项与 Rsbuild 的 [resolve.alias](https://rsbuild.rs/config/resolve/alias) 选项之间的优先级关系。
11
+
12
+ import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="resolve.aliasStrategy" />
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: alias
3
+ ---
4
+
5
+ # resolve.alias
6
+
7
+ - **类型:** `string[]`
8
+
9
+ 设置模块路径的别名,用于简化导入路径或重定向模块引用。
10
+
11
+ import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
12
+
13
+ <RsbuildConfig configName="resolve.alias" />
@@ -0,0 +1,18 @@
1
+ ---
2
+ title: conditionNames
3
+ ---
4
+
5
+ # resolve.conditionNames
6
+
7
+ - **类型:** `string[]`
8
+ - **默认值:** 与 Rsbuild 的 `resolve.conditionNames` 一致
9
+
10
+ 指定用于匹配包 [exports](https://nodejs.org/api/packages.html#packages_exports) 字段 入口点的 condition names(条件名称)。
11
+
12
+ import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="resolve.extensions" />
15
+
16
+ :::warning
17
+ SSR 应用请勿启用此配置项,否则会导致 SSR 渲染失败。
18
+ :::
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: dedupe
3
+ ---
4
+
5
+ # resolve.dedupe
6
+
7
+ - **类型:** `string[]`
8
+
9
+ 强制 Rsbuild 从项目根目录解析指定的包,这可以用于移除重复包和减少包大小。对应 Rsbuild 的 [resolve.dedupe](https://rsbuild.rs/config/resolve/dedupe) 配置。
10
+
11
+
12
+ import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="resolve.dedupe" />
@@ -0,0 +1,18 @@
1
+ ---
2
+ title: extensions
3
+ ---
4
+
5
+ # resolve.extensions
6
+
7
+ - **类型:** `string[]`
8
+ - **默认值:** `['.ts', '.tsx', '.mjs', '.js', '.jsx', '.json']`
9
+
10
+ 自动添加导入文件的扩展名。这意味着你可以导入文件,而不需要显式地写它们的扩展名。
11
+
12
+ import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="resolve.extensions" />
15
+
16
+ :::warning
17
+ SSR 应用请勿启用此配置项,否则会导致 SSR 渲染失败。
18
+ :::
@@ -2,12 +2,6 @@
2
2
 
3
3
  Modern.js 的运行时(Runtime)配置需集中在 `src/modern.runtime.ts` 文件中声明。
4
4
 
5
- :::warning
6
-
7
- 使用 `src/modern.runtime.ts` 配置方式需要 Modern.js 版本 **MAJOR_VERSION.66.0** 或更高版本。
8
-
9
- :::
10
-
11
5
  :::info
12
6
  如果项目中还没有此文件,请执行以下命令创建:
13
7
 
@@ -26,9 +20,6 @@ export default defineRuntimeConfig({
26
20
  router: {
27
21
  // 路由配置
28
22
  },
29
- state: {
30
- // 状态管理配置
31
- },
32
23
  // 其他运行时模块...
33
24
  });
34
25
  ```
@@ -46,16 +37,13 @@ export default defineRuntimeConfig(entryName => {
46
37
  router: {
47
38
  // "main" 入口的路由配置
48
39
  },
49
- state: {
50
- // "main" 入口的状态管理配置
51
- },
52
40
  };
53
41
  }
54
42
 
55
43
  // 其他入口的配置
56
44
  return {
57
- masterApp: {
58
- // 微前端配置示例
45
+ router: {
46
+ // 其他入口的路由配置
59
47
  },
60
48
  };
61
49
  });
@@ -65,45 +53,6 @@ export default defineRuntimeConfig(entryName => {
65
53
  使用 `src/modern.runtime.ts` 配置方式不支持导出异步函数,这与 Modern.js 的渲染方式有关。如果需要添加异步逻辑,请使用 **[Runtime 插件 (Runtime Plugin)](/plugin/introduction.html#runtime-插件)**。
66
54
  :::
67
55
 
68
-
69
-
70
56
  import RuntimeCliConfig from '@site-docs/components/runtime-cli-config';
71
57
 
72
58
  <RuntimeCliConfig />
73
-
74
- ## 配置方式演进
75
-
76
- 在 MAJOR_VERSION.66.0 之前,运行时配置分散在多个位置:
77
-
78
- 1. `modern.config.ts` 中的 `runtime` 和 `runtimeByEntries` 字段
79
- 2. 各入口的 `App.config` 或 `layout` 文件导出的 `config` 函数
80
-
81
- 为提升可维护性,Modern.js 引入了统一的 `src/modern.runtime.ts` 配置入口。
82
-
83
- ### 旧配置方式(兼容但不推荐)
84
-
85
- ```ts
86
- // modern.config.ts
87
- export default {
88
- runtime: {
89
- /* ... */
90
- },
91
- runtimeByEntries: {
92
- /* ... */
93
- },
94
- };
95
-
96
- // App.config
97
- App.config = {
98
- /* ... */
99
- };
100
-
101
- // layout 文件
102
- export const config = () => {
103
- /* 动态配置逻辑 */
104
- };
105
- ```
106
-
107
- ### 迁移建议
108
-
109
- 强烈建议将所有运行时配置迁移至 `src/modern.runtime.ts`。虽然旧配置方式目前仍兼容,但计划在未来版本中逐步废弃。统一配置入口可避免配置分散,显著提高项目可维护性。
@@ -57,7 +57,7 @@ error [Syntax Checker] Find some syntax errors after production build:
57
57
 
58
58
  :::tip
59
59
  目前语法检测是基于 AST parser 来实现的,每次检测时,只能找出文件中的第一个不兼容语法。如果一个文件中存在多个不兼容语法,你需要修复已发现的语法,并重新执行检测。
60
- 如果日志中没有显示对应的源码位置,可以尝试将 **output.disableMinimize** 设置为 true 后再重新构建。
60
+ 如果日志中没有显示对应的源码位置,可以尝试将 **output.minify** 设置为 false 后再重新构建。
61
61
  :::
62
62
 
63
63
  ### 解决方法
@@ -7,7 +7,7 @@ title: port
7
7
  - **类型:** `number`
8
8
  - **默认值:** `8080`
9
9
 
10
- Modern.js 在执行 `dev`, `start` 和 `serve` 命令时,会以 `8080` 为默认端口启动,并会在端口被占用时自动递增端口号。你可以通过该配置来修改 Server 启动的端口号:
10
+ Modern.js 在执行 `dev` 和 `serve` 命令时,会以 `8080` 为默认端口启动,并会在端口被占用时自动递增端口号。你可以通过该配置来修改 Server 启动的端口号:
11
11
 
12
12
  ```ts title="modern.config.ts"
13
13
  export default defineConfig({
@@ -17,26 +17,7 @@ export default defineConfig({
17
17
  });
18
18
  ```
19
19
 
20
- ### 与 dev.port 的区别
21
-
22
- 大多数情况下,我们推荐使用 `server.port` 而不是 `dev.port` 来设置端口号,他们之间的区别如下:
23
-
24
- - `dev.port` 仅在开发环境下生效,`server.port` 在开发环境和生产环境下均能生效。
25
- - 在开发环境下,`dev.port` 的优先级高于 `server.port`。
26
-
27
- 当你同时设置 `dev.port` 和 `server.port` 时,`dev.port` 会在开发环境下生效,`server.port` 会在生产环境下生效。比如以下例子,在开发环境下监听的端口号为 `3001`,在生产环境下监听的端口号为 `3002`。
28
-
29
- ```ts title="modern.config.ts"
30
- export default defineConfig({
31
- dev: {
32
- port: 3001,
33
- },
34
- server: {
35
- port: 3002,
36
- },
37
- });
38
- ```
39
-
40
20
  import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
41
21
 
42
22
  <RsbuildConfig configName="server.port" />
23
+ ```
@@ -0,0 +1,30 @@
1
+ ---
2
+ title: rsc
3
+ ---
4
+
5
+ # server.rsc
6
+
7
+ - **类型:** `boolean`
8
+ - **默认值:** `false`
9
+
10
+ 启用 React Server Components (RSC) 配置。
11
+
12
+ 当设置为 `true` 时,启用 Modern.js 的 React Server Components 支持。这允许组件在服务端渲染,提供更好的性能和开发体验。
13
+
14
+ ```ts title="modern.config.ts"
15
+ export default defineConfig({
16
+ server: {
17
+ rsc: true,
18
+ },
19
+ });
20
+ ```
21
+
22
+ :::tip 前置条件
23
+ 在启用 RSC 之前,请确保:
24
+ 1. React 和 React DOM 已升级到 19 版本(建议 19.2.3 以上版本)
25
+ 2. 已安装 `react-server-dom-webpack` 依赖
26
+
27
+ :::
28
+
29
+ 有关使用 RSC 的更多信息,请参阅 [React Server Components 指南](/guides/basic-features/render/rsc)。
30
+
@@ -27,11 +27,10 @@ export default defineConfig({
27
27
 
28
28
  | 属性 | 类型 | 默认值 | 描述 |
29
29
  | ---------------- | ------------------------------------------------------------- | -------------------------------------- | ---------------------------------------------------------------------------- |
30
- | mode | `string` | `string` | 默认为使用 `renderToString` 渲染。配置为 `stream` 开启流式渲染 |
30
+ | mode | `string` | `stream` | 默认为使用流式渲染。配置为 `string` 使用 `renderToString` 渲染 |
31
31
  | forceCSR | `boolean` | `false` | 默认关闭强制 CSR 渲染。配置为 `true` 后,在页面访问时添加 `?csr=true` 或添加请求头 `x-modern-ssr-fallback` 即可强制 CSR |
32
- | disablePrerender | `boolean` | `fasle` | 为了兼容旧数据请求方式 - `useLoader`, 默认情况下 Modern.js 会对组件进行一次预渲染即有两次渲染 |
33
32
  | unsafeHeaders | `string[]` | `[]` | 为了安全考虑,Modern.js 不会往 SSR_DATA 添加过多的内容。开发者可以通过该配置,对需要注入的 headers 进行配置 |
34
- | 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) 配合使用 |
33
+ | loaderFailureMode| `clientRender \| errorBoundary` | `errorBoundary` | 当 [data loader](/guides/basic-features/data/data-fetch.html#data-loader推荐) 中出错时,默认会渲染路由 [`Error`](/guides/basic-features/routes/routes#错误处理) 组件,配置为 `'clientRender'` 时,有一个 data loader 抛错,就降级到客户端渲染,可以与 [Client Loader](/guides/basic-features/data/data-fetch.html#client-loader) 配合使用 |
35
34
 
36
35
 
37
36
  ```ts title="modern.config.ts"
@@ -40,7 +39,6 @@ export default defineConfig({
40
39
  ssr: {
41
40
  forceCSR: true,
42
41
  mode: 'stream',
43
- disablePrerender: true,
44
42
  unsafeHeaders: ['User-Agent'],
45
43
  scriptLoading: 'async',
46
44
  },
@@ -58,17 +56,29 @@ export default defineConfig({
58
56
 
59
57
  3. SSR 服务压力过大,需要部分流量直接降级为 CSR,避免服务宕机。
60
58
 
61
- 在项目中配置 `server.ssr.forceCSR` 为 `true` 后,我们可以通过请求的查询字符串,或是请求头来控制这一行为。
59
+ 在项目中配置 `server.ssr.forceCSR` 为 `true` 后,我们可以通过请求的查询字符串、context,或是请求头来控制这一行为。
62
60
 
63
61
  例如在自定义 Web Server 的中间件中,检测到流量大于某一阈值时,主动降级:
64
62
 
65
- ```ts title="server/index.ts"
66
- export const middleware = (ctx, next) => {
67
- const { req, res } = ctx;
63
+ ```ts title="server/modern.server.ts"
64
+ import {
65
+ defineServerConfig,
66
+ type MiddlewareHandler,
67
+ } from '@modern-js/server-runtime';
68
+
69
+ export const handler: MiddlewareHandler = async (c, next) => {
68
70
  if (condition) {
69
- req.headers['x-modern-ssr-fallback'] = '1';
71
+ c.set('forceCSR', '1');
70
72
  }
71
-
72
- next();
73
+ await next();
73
74
  };
75
+
76
+ export default defineServerConfig({
77
+ middlewares: [
78
+ {
79
+ name: 'request-middleware',
80
+ handler,
81
+ },
82
+ ],
83
+ });
74
84
  ```
@@ -20,8 +20,8 @@ const defaultDecorators = {
20
20
  };
21
21
  ```
22
22
 
23
- 用于配置装饰器语法。
23
+ :::warning
24
+ 该配置项的使用方式与 Rsbuild 一致,但默认值不同。详细信息请参考 [Rsbuild - source.decorators](https://rsbuild.rs/zh/config/source/decorators)。
25
+ :::
24
26
 
25
- import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
26
-
27
- <RsbuildConfig configName="source.decorators" />
27
+ 我们发现大部分的项目仍使用 `legacy` 版本的装饰器语法,因此默认值为 `legacy`。
@@ -13,7 +13,6 @@ type Entries = Record<
13
13
  | {
14
14
  entry: string;
15
15
  disableMount?: boolean;
16
- customBootstrap?: string;
17
16
  }
18
17
  >;
19
18
  ```
@@ -84,7 +83,6 @@ export default defineConfig({
84
83
 
85
84
  - `entry`:`string`,入口文件路径。
86
85
  - `disableMount`:`boolean = false`,关闭 Modern.js 自动生成入口代码的行为。
87
- - `customBootstrap`: `string = ''`,指定[自定义 Bootstrap](/guides/concept/entries#自定义-bootstrap) 的文件路径。
88
86
 
89
87
  ```ts title="modern.config.ts"
90
88
  import { defineConfig } from '@modern-js/app-tools';
@@ -5,18 +5,18 @@ title: mainEntryName
5
5
  # source.mainEntryName
6
6
 
7
7
  - **类型:** `string`
8
- - **默认值:** `'main'`
8
+ - **默认值:** `'index'`
9
9
 
10
10
  该选项用于配置 Modern.js 的主入口名称。
11
11
 
12
- 默认情况下,Modern.js 的默认主入口名称为 `main`,当使用单入口或者入口名称和 `package.json` 中 name 字段一致时,会将对应入口作为主入口,通过该配置可以修改主入口的名称。
12
+ 默认情况下,Modern.js 的默认主入口名称为 `index`,当使用单入口或者入口名称和 `package.json` 中 name 字段一致时,会将对应入口作为主入口,通过该配置可以修改主入口的名称。
13
13
 
14
- 比如将主入口名称改为 index
14
+ 比如将主入口名称改为 main
15
15
 
16
16
  ```ts title="modern.config.ts"
17
17
  export default defineConfig({
18
18
  source: {
19
- mainEntryName: 'index',
19
+ mainEntryName: 'main',
20
20
  },
21
21
  });
22
22
  ```
@@ -24,66 +24,8 @@ type TransformImport =
24
24
  | Function;
25
25
  ```
26
26
 
27
- - **默认值:**
28
-
29
- 当项目中安装了 [Ant Design 组件库](https://www.npmjs.com/package/antd) &lt;= 4.x 版本时,Modern.js 会自动添加以下默认配置:
30
-
31
- ```js
32
- const defaultAntdConfig = {
33
- libraryName: 'antd',
34
- libraryDirectory: isServer ? 'lib' : 'es',
35
- style: true,
36
- };
37
- ```
38
-
39
- 当项目中安装了 [Arco Design 组件库](https://www.npmjs.com/package/@arco-design/web-react) 时,Modern.js 会自动添加以下默认配置:
40
-
41
- ```js
42
- const defaultArcoConfig = [
43
- {
44
- libraryName: '@arco-design/web-react',
45
- libraryDirectory: isServer ? 'lib' : 'es',
46
- camelToDashComponentName: false,
47
- style: true,
48
- },
49
- {
50
- libraryName: '@arco-design/web-react/icon',
51
- libraryDirectory: isServer ? 'react-icon-cjs' : 'react-icon',
52
- camelToDashComponentName: false,
53
- },
54
- ];
55
- ```
56
-
57
- :::tip
58
- 当你添加了 `antd` 或 `@arco-design/web-react` 相关的配置时,优先级会高于上述默认配置。
59
- :::
27
+ - **默认值:** `undefined`
60
28
 
61
29
  import RsbuildConfig from '@site-docs/components/rsbuild-config-tooltip';
62
30
 
63
31
  <RsbuildConfig configName="source.transformImport" />
64
-
65
- ### 禁用默认配置
66
-
67
- 你可以手动设置 `transformImport: false` 来关掉 transformImport 的默认行为。
68
-
69
- ```js
70
- export default {
71
- source: {
72
- transformImport: false,
73
- },
74
- };
75
- ```
76
-
77
- 你也可以使用 `transformImport` 的 [function 用法](https://rsbuild.rs/zh/config/source/transform-import#function-%E7%B1%BB%E5%9E%8B) 对默认配置进行自定义修改。
78
-
79
- ```js
80
- export default {
81
- source: {
82
- transformImport: imports => {
83
- return imports.filter(data => data.libraryName !== 'antd');
84
- },
85
- },
86
- };
87
- ```
88
-
89
- 比如,当你使用了 `externals` 来避免打包 antd 时,由于 `transformImport` 默认会转换 antd 的引用路径,导致匹配的路径发生了变化,因此 externals 无法正确生效,此时你可以设置关闭 `transformImport` 来避免该问题。
@@ -8,26 +8,26 @@ title: bundlerChain
8
8
 
9
9
  ```ts
10
10
  type BundlerChainFn = (
11
- chain: RspackChain | webpackChain,
11
+ chain: RspackChain,
12
12
  utils: ModifyBundlerChainUtils,
13
13
  ) => Promise<void> | void;
14
14
  ```
15
15
 
16
16
  - **默认值:** `undefined`
17
17
 
18
- 你可以通过 `tools.bundlerChain` 来修改默认的 webpack 和 Rspack 配置,它的值为 `Function` 类型,接收两个参数:
18
+ 你可以通过 `tools.bundlerChain` 来修改默认的 Rspack 配置,它的值为 `Function` 类型,接收两个参数:
19
19
 
20
- - 第一个参数为 `bundler-chain` 对象实例,你可以通过这个实例来修改 webpack 和 Rspack 的配置。
20
+ - 第一个参数为 `bundler-chain` 对象实例,你可以通过这个实例来修改 Rspack 的配置。
21
21
  - 第二个参数为一个工具集合,包括`env`、`isProd`、`CHAIN_ID` 等。
22
22
 
23
23
  :::tip 什么是 BundlerChain
24
24
 
25
- Bundler chain webpack chain 的子集,其中包含一部分 webpack chain API,你可以用它来同时修改 webpack Rspack 的配置。
25
+ Bundler chain 是基于 Rspack 配置 API 实现的链式配置工具,你可以用它来修改 Rspack 的配置。
26
26
 
27
- 通过 bundler chain 修改的配置,在 webpack 和 Rspack 构建时均可生效。需要注意的是,bundler chain 只支持修改 webpack 和 Rspack 间无差异部分的配置。如,修改 devtool 配置项(webpack 和 Rspack 的 devtool 属性值类型相同),或添加一个[Rspack 兼容](https://rspack.rs/zh/guide/compatibility/plugin)的 webpack 插件。
27
+ 通过 bundler chain 修改的配置,将在 Rspack 构建时生效。
28
28
 
29
29
  :::
30
30
 
31
- > `tools.bundlerChain` 的执行时机早于 tools.webpackChain / tools.webpack / tools.rspack,因此会被其他几个配置中的修改所覆盖。
31
+ > `tools.bundlerChain` 的执行时机早于 tools.rspack,因此会被 tools.rspack 中的修改所覆盖。
32
32
 
33
33
  更多信息可参考 [Rsbuild#tools.bundlerChain](https://rsbuild.rs/zh/config/tools/bundler-chain)。