@modern-js/main-doc 2.8.0 → 2.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1096) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +15 -18
  3. package/docs/en/apis/app/hooks/api/framework/lambda.mdx +57 -0
  4. package/docs/en/apis/app/hooks/api/functions/api.mdx +81 -0
  5. package/docs/en/apis/app/hooks/src/routes.mdx +90 -0
  6. package/docs/en/apis/app/hooks/src/server.mdx +34 -0
  7. package/docs/en/apis/app/runtime/router/router.mdx +262 -0
  8. package/docs/en/apis/app/runtime/web-server/hook.mdx +131 -0
  9. package/docs/en/apis/app/runtime/web-server/middleware.mdx +131 -0
  10. package/docs/en/blog/index.md +8 -0
  11. package/docs/en/components/enable-bff.mdx +31 -0
  12. package/docs/en/components/init-app.mdx +43 -0
  13. package/docs/en/components/init-rspack-app.mdx +7 -0
  14. package/docs/en/components/prerequisites.mdx +18 -0
  15. package/docs/en/configure/app/dev/asset-prefix.mdx +13 -0
  16. package/docs/en/configure/app/dev/before-start-url.mdx +13 -0
  17. package/docs/en/configure/app/dev/hmr.mdx +13 -0
  18. package/docs/en/configure/app/dev/host.mdx +13 -0
  19. package/docs/en/configure/app/dev/https.mdx +13 -0
  20. package/docs/en/configure/app/dev/port.mdx +13 -0
  21. package/docs/en/configure/app/dev/progress-bar.mdx +13 -0
  22. package/docs/en/configure/app/dev/start-url.mdx +13 -0
  23. package/docs/en/configure/app/experiments/lazy-compilation.mdx +13 -0
  24. package/docs/en/configure/app/html/app-icon.mdx +13 -0
  25. package/docs/en/configure/app/html/crossorigin.mdx +13 -0
  26. package/docs/en/configure/app/html/disable-html-folder.mdx +13 -0
  27. package/docs/en/configure/app/html/favicon-by-entries.mdx +13 -0
  28. package/docs/en/configure/app/html/favicon.mdx +13 -0
  29. package/docs/en/configure/app/html/inject-by-entries.mdx +13 -0
  30. package/docs/en/configure/app/html/inject.mdx +13 -0
  31. package/docs/en/configure/app/html/meta-by-entries.mdx +13 -0
  32. package/docs/en/configure/app/html/meta.mdx +13 -0
  33. package/docs/en/configure/app/html/mount-id.mdx +13 -0
  34. package/docs/en/configure/app/html/tags-by-entries.mdx +13 -0
  35. package/docs/en/configure/app/html/tags.mdx +13 -0
  36. package/docs/en/configure/app/html/template-by-entries.mdx +13 -0
  37. package/docs/en/configure/app/html/template-parameters-by-entries.mdx +13 -0
  38. package/docs/en/configure/app/html/template-parameters.mdx +13 -0
  39. package/docs/en/configure/app/html/template.mdx +13 -0
  40. package/docs/en/configure/app/html/title-by-entries.mdx +13 -0
  41. package/docs/en/configure/app/html/title.mdx +13 -0
  42. package/docs/en/configure/app/output/asset-prefix.mdx +13 -0
  43. package/docs/en/configure/app/output/assets-retry.mdx +13 -0
  44. package/docs/en/configure/app/output/charset.mdx +13 -0
  45. package/docs/en/configure/app/output/clean-dist-path.mdx +13 -0
  46. package/docs/en/configure/app/output/convert-to-rem.mdx +13 -0
  47. package/docs/en/configure/app/output/copy.mdx +13 -0
  48. package/docs/en/configure/app/output/css-module-local-ident-name.mdx +13 -0
  49. package/docs/en/configure/app/output/data-uri-limit.mdx +13 -0
  50. package/docs/en/configure/app/output/disable-css-extract.mdx +13 -0
  51. package/docs/en/configure/app/output/disable-css-module-extension.mdx +13 -0
  52. package/docs/en/configure/app/output/disable-filename-hash.mdx +13 -0
  53. package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +13 -0
  54. package/docs/en/configure/app/output/disable-minimize.mdx +13 -0
  55. package/docs/en/configure/app/output/disable-source-map.mdx +13 -0
  56. package/docs/en/configure/app/output/disable-ts-checker.mdx +13 -0
  57. package/docs/en/configure/app/output/dist-path.mdx +13 -0
  58. package/docs/en/configure/app/output/enable-asset-fallback.mdx +13 -0
  59. package/docs/en/configure/app/output/enable-asset-manifest.mdx +13 -0
  60. package/docs/en/configure/app/output/enable-css-module-tsdeclaration.mdx +13 -0
  61. package/docs/en/configure/app/output/enable-inline-scripts.mdx +13 -0
  62. package/docs/en/configure/app/output/enable-inline-styles.mdx +13 -0
  63. package/docs/en/configure/app/output/enable-latest-decorators.mdx +13 -0
  64. package/docs/en/configure/app/output/externals.mdx +13 -0
  65. package/docs/en/configure/app/output/filename.mdx +13 -0
  66. package/docs/en/configure/app/output/legal-comments.mdx +13 -0
  67. package/docs/en/configure/app/output/override-browserslist.mdx +13 -0
  68. package/docs/en/configure/app/output/polyfill.mdx +13 -0
  69. package/docs/en/configure/app/output/splitRouteChunks.mdx +20 -0
  70. package/docs/en/configure/app/output/ssg.mdx +196 -0
  71. package/docs/en/configure/app/output/svg-default-export.mdx +13 -0
  72. package/docs/en/configure/app/performance/build-cache.mdx +13 -0
  73. package/docs/en/configure/app/performance/bundle-analyze.mdx +13 -0
  74. package/docs/en/configure/app/performance/chunk-split.mdx +13 -0
  75. package/docs/en/configure/app/performance/print-file-size.mdx +13 -0
  76. package/docs/en/configure/app/performance/profile.mdx +13 -0
  77. package/docs/en/configure/app/performance/remove-console.mdx +13 -0
  78. package/docs/en/configure/app/performance/remove-moment-locale.mdx +13 -0
  79. package/docs/en/configure/app/security/check-syntax.mdx +13 -0
  80. package/docs/en/configure/app/security/sri.mdx +13 -0
  81. package/docs/en/configure/app/server/public-routes.mdx +26 -0
  82. package/docs/en/configure/app/server/ssr.mdx +38 -0
  83. package/docs/en/configure/app/source/alias.mdx +13 -0
  84. package/docs/en/configure/app/source/compile-js-data-uri.mdx +13 -0
  85. package/docs/en/configure/app/source/define.mdx +13 -0
  86. package/docs/en/configure/app/source/design-system.mdx +1175 -0
  87. package/docs/en/configure/app/source/disable-entry-dirs.mdx +39 -0
  88. package/docs/en/configure/app/source/entries.mdx +123 -0
  89. package/docs/en/configure/app/source/exclude.mdx +13 -0
  90. package/docs/en/configure/app/source/global-vars.mdx +13 -0
  91. package/docs/en/configure/app/source/include.mdx +13 -0
  92. package/docs/en/configure/app/source/module-scopes.mdx +13 -0
  93. package/docs/en/configure/app/source/pre-entry.mdx +13 -0
  94. package/docs/en/configure/app/source/resolve-extension-prefix.mdx +13 -0
  95. package/docs/en/configure/app/source/resolve-main-fields.mdx +13 -0
  96. package/docs/en/configure/app/tools/autoprefixer.mdx +13 -0
  97. package/docs/en/configure/app/tools/babel.mdx +13 -0
  98. package/docs/en/configure/app/tools/css-extract.mdx +13 -0
  99. package/docs/en/configure/app/tools/css-loader.mdx +13 -0
  100. package/docs/en/configure/app/tools/dev-server.mdx +13 -0
  101. package/docs/en/configure/app/tools/html-plugin.mdx +13 -0
  102. package/docs/en/configure/app/tools/inspector.mdx +13 -0
  103. package/docs/en/configure/app/tools/less.mdx +13 -0
  104. package/docs/en/configure/app/tools/minify-css.mdx +13 -0
  105. package/docs/en/configure/app/tools/postcss.mdx +13 -0
  106. package/docs/en/configure/app/tools/pug.mdx +13 -0
  107. package/docs/en/configure/app/tools/rspack.mdx +13 -0
  108. package/docs/en/configure/app/tools/sass.mdx +13 -0
  109. package/docs/en/configure/app/tools/style-loader.mdx +13 -0
  110. package/docs/en/configure/app/tools/styled-components.mdx +13 -0
  111. package/docs/en/configure/app/tools/terser.mdx +13 -0
  112. package/docs/en/configure/app/tools/ts-checker.mdx +13 -0
  113. package/docs/en/configure/app/tools/ts-loader.mdx +13 -0
  114. package/docs/en/configure/app/tools/webpack-chain.mdx +13 -0
  115. package/docs/en/configure/app/tools/webpack.mdx +13 -0
  116. package/docs/en/guides/advanced-features/code-split.mdx +80 -0
  117. package/docs/en/guides/advanced-features/compatibility.mdx +79 -0
  118. package/docs/en/guides/advanced-features/eslint.mdx +148 -0
  119. package/docs/en/guides/advanced-features/rspack-start.mdx +61 -0
  120. package/docs/en/guides/advanced-features/ssg.mdx +116 -0
  121. package/docs/en/guides/advanced-features/ssr.mdx +518 -0
  122. package/docs/en/guides/advanced-features/testing.mdx +46 -0
  123. package/docs/en/guides/advanced-features/web-server.mdx +124 -0
  124. package/docs/en/guides/basic-features/data-fetch.mdx +404 -0
  125. package/docs/en/guides/basic-features/env-vars.mdx +174 -0
  126. package/docs/en/guides/basic-features/html.mdx +247 -0
  127. package/docs/en/guides/basic-features/proxy.mdx +61 -0
  128. package/docs/en/guides/get-started/introduction.mdx +50 -0
  129. package/docs/en/guides/get-started/quick-start.mdx +164 -0
  130. package/docs/en/guides/topic-detail/framework-plugin/extend.mdx +164 -0
  131. package/docs/en/guides/topic-detail/framework-plugin/hook-list.mdx +827 -0
  132. package/docs/en/guides/topic-detail/framework-plugin/hook.mdx +188 -0
  133. package/docs/en/guides/topic-detail/framework-plugin/implement.mdx +246 -0
  134. package/docs/en/guides/topic-detail/framework-plugin/plugin-api.mdx +118 -0
  135. package/docs/en/guides/topic-detail/framework-plugin/relationship.mdx +119 -0
  136. package/docs/en/guides/topic-detail/generator/codesmith/api/fs.mdx +54 -0
  137. package/docs/en/guides/topic-detail/generator/codesmith/api/npm.mdx +48 -0
  138. package/docs/en/guides/topic-detail/generator/codesmith/develop.mdx +53 -0
  139. package/docs/en/guides/topic-detail/generator/config/app.mdx +82 -0
  140. package/docs/en/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +55 -0
  141. package/docs/en/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +55 -0
  142. package/docs/en/guides/topic-detail/generator/plugin/api/npm/install.mdx +18 -0
  143. package/docs/en/guides/topic-detail/generator/plugin/develop.mdx +125 -0
  144. package/docs/en/guides/topic-detail/generator/project.mdx +118 -0
  145. package/docs/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +282 -0
  146. package/docs/en/guides/topic-detail/micro-frontend/c04-communicate.mdx +57 -0
  147. package/docs/en/guides/topic-detail/model/computed-state.mdx +153 -0
  148. package/docs/en/guides/troubleshooting/cli.mdx +63 -0
  149. package/docs/en/tutorials/first-app/c03-css.mdx +323 -0
  150. package/docs/zh/apis/app/runtime/web-server/hook.mdx +130 -0
  151. package/docs/zh/apis/app/runtime/web-server/middleware.mdx +128 -0
  152. package/docs/zh/apis/monorepo/commands/new.mdx +39 -0
  153. package/docs/zh/blog/index.md +74 -0
  154. package/docs/zh/blog/updates/2022-0708-updates.md +96 -0
  155. package/docs/zh/blog/updates/2022-0910-updates.md +80 -0
  156. package/docs/zh/blog/updates/_category_.json +5 -0
  157. package/docs/zh/blog/updates/v2-release-note.mdx +250 -0
  158. package/docs/zh/components/default-mwa-generate.mdx +5 -0
  159. package/docs/zh/components/init-app.mdx +44 -0
  160. package/docs/zh/components/init-rspack-app.mdx +7 -0
  161. package/docs/zh/components/prerequisites.mdx +18 -0
  162. package/docs/zh/configure/app/dev/asset-prefix.mdx +13 -0
  163. package/docs/zh/configure/app/dev/before-start-url.mdx +13 -0
  164. package/docs/zh/configure/app/dev/hmr.mdx +13 -0
  165. package/docs/zh/configure/app/dev/host.mdx +13 -0
  166. package/docs/zh/configure/app/dev/https.mdx +13 -0
  167. package/docs/zh/configure/app/dev/port.mdx +13 -0
  168. package/docs/zh/configure/app/dev/progress-bar.mdx +13 -0
  169. package/docs/zh/configure/app/dev/start-url.mdx +13 -0
  170. package/docs/zh/configure/app/experiments/lazy-compilation.mdx +13 -0
  171. package/docs/zh/configure/app/html/app-icon.mdx +13 -0
  172. package/docs/zh/configure/app/html/crossorigin.mdx +13 -0
  173. package/docs/zh/configure/app/html/disable-html-folder.mdx +13 -0
  174. package/docs/zh/configure/app/html/favicon-by-entries.mdx +13 -0
  175. package/docs/zh/configure/app/html/favicon.mdx +13 -0
  176. package/docs/zh/configure/app/html/inject-by-entries.mdx +13 -0
  177. package/docs/zh/configure/app/html/inject.mdx +13 -0
  178. package/docs/zh/configure/app/html/meta-by-entries.mdx +13 -0
  179. package/docs/zh/configure/app/html/meta.mdx +13 -0
  180. package/docs/zh/configure/app/html/mount-id.mdx +13 -0
  181. package/docs/zh/configure/app/html/tags-by-entries.mdx +13 -0
  182. package/docs/zh/configure/app/html/tags.mdx +13 -0
  183. package/docs/zh/configure/app/html/template-by-entries.mdx +13 -0
  184. package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +13 -0
  185. package/docs/zh/configure/app/html/template-parameters.mdx +13 -0
  186. package/docs/zh/configure/app/html/template.mdx +13 -0
  187. package/docs/zh/configure/app/html/title-by-entries.mdx +13 -0
  188. package/docs/zh/configure/app/html/title.mdx +13 -0
  189. package/docs/zh/configure/app/output/asset-prefix.mdx +13 -0
  190. package/docs/zh/configure/app/output/assets-retry.mdx +13 -0
  191. package/docs/zh/configure/app/output/charset.mdx +13 -0
  192. package/docs/zh/configure/app/output/clean-dist-path.mdx +13 -0
  193. package/docs/zh/configure/app/output/convert-to-rem.mdx +13 -0
  194. package/docs/zh/configure/app/output/copy.mdx +13 -0
  195. package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +13 -0
  196. package/docs/zh/configure/app/output/data-uri-limit.mdx +13 -0
  197. package/docs/zh/configure/app/output/disable-css-extract.mdx +13 -0
  198. package/docs/zh/configure/app/output/disable-css-module-extension.mdx +13 -0
  199. package/docs/zh/configure/app/output/disable-filename-hash.mdx +13 -0
  200. package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +13 -0
  201. package/docs/zh/configure/app/output/disable-minimize.mdx +13 -0
  202. package/docs/zh/configure/app/output/disable-source-map.mdx +13 -0
  203. package/docs/zh/configure/app/output/disable-ts-checker.mdx +13 -0
  204. package/docs/zh/configure/app/output/dist-path.mdx +13 -0
  205. package/docs/zh/configure/app/output/enable-asset-fallback.mdx +13 -0
  206. package/docs/zh/configure/app/output/enable-asset-manifest.mdx +13 -0
  207. package/docs/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +13 -0
  208. package/docs/zh/configure/app/output/enable-inline-scripts.mdx +13 -0
  209. package/docs/zh/configure/app/output/enable-inline-styles.mdx +13 -0
  210. package/docs/zh/configure/app/output/enable-latest-decorators.mdx +13 -0
  211. package/docs/zh/configure/app/output/externals.mdx +13 -0
  212. package/docs/zh/configure/app/output/filename.mdx +13 -0
  213. package/docs/zh/configure/app/output/legal-comments.mdx +13 -0
  214. package/docs/zh/configure/app/output/override-browserslist.mdx +13 -0
  215. package/docs/zh/configure/app/output/polyfill.mdx +13 -0
  216. package/docs/zh/configure/app/output/splitRouteChunks.mdx +20 -0
  217. package/docs/zh/configure/app/output/svg-default-export.mdx +13 -0
  218. package/docs/zh/configure/app/performance/build-cache.mdx +13 -0
  219. package/docs/zh/configure/app/performance/bundle-analyze.mdx +13 -0
  220. package/docs/zh/configure/app/performance/chunk-split.mdx +13 -0
  221. package/docs/zh/configure/app/performance/print-file-size.mdx +13 -0
  222. package/docs/zh/configure/app/performance/profile.mdx +13 -0
  223. package/docs/zh/configure/app/performance/remove-console.mdx +13 -0
  224. package/docs/zh/configure/app/performance/remove-moment-locale.mdx +13 -0
  225. package/docs/zh/configure/app/security/check-syntax.mdx +13 -0
  226. package/docs/zh/configure/app/security/sri.mdx +13 -0
  227. package/docs/zh/configure/app/source/alias.mdx +13 -0
  228. package/docs/zh/configure/app/source/compile-js-data-uri.mdx +13 -0
  229. package/docs/zh/configure/app/source/define.mdx +13 -0
  230. package/docs/zh/configure/app/source/exclude.mdx +13 -0
  231. package/docs/zh/configure/app/source/global-vars.mdx +13 -0
  232. package/docs/zh/configure/app/source/include.mdx +13 -0
  233. package/docs/zh/configure/app/source/module-scopes.mdx +13 -0
  234. package/docs/zh/configure/app/source/pre-entry.mdx +13 -0
  235. package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +13 -0
  236. package/docs/zh/configure/app/source/resolve-main-fields.mdx +13 -0
  237. package/docs/zh/configure/app/tools/autoprefixer.mdx +13 -0
  238. package/docs/zh/configure/app/tools/babel.mdx +13 -0
  239. package/docs/zh/configure/app/tools/css-extract.mdx +13 -0
  240. package/docs/zh/configure/app/tools/css-loader.mdx +13 -0
  241. package/docs/zh/configure/app/tools/dev-server.mdx +13 -0
  242. package/docs/zh/configure/app/tools/html-plugin.mdx +13 -0
  243. package/docs/zh/configure/app/tools/inspector.mdx +13 -0
  244. package/docs/zh/configure/app/tools/less.mdx +13 -0
  245. package/docs/zh/configure/app/tools/minify-css.mdx +13 -0
  246. package/docs/zh/configure/app/tools/postcss.mdx +13 -0
  247. package/docs/zh/configure/app/tools/pug.mdx +13 -0
  248. package/docs/zh/configure/app/tools/rspack.mdx +13 -0
  249. package/docs/zh/configure/app/tools/sass.mdx +13 -0
  250. package/docs/zh/configure/app/tools/style-loader.mdx +13 -0
  251. package/docs/zh/configure/app/tools/styled-components.mdx +13 -0
  252. package/docs/zh/configure/app/tools/terser.mdx +13 -0
  253. package/docs/zh/configure/app/tools/ts-checker.mdx +13 -0
  254. package/docs/zh/configure/app/tools/ts-loader.mdx +13 -0
  255. package/docs/zh/configure/app/tools/webpack-chain.mdx +13 -0
  256. package/docs/zh/configure/app/tools/webpack.mdx +13 -0
  257. package/docs/zh/guides/advanced-features/compatibility.mdx +77 -0
  258. package/docs/zh/guides/advanced-features/eslint.mdx +152 -0
  259. package/docs/zh/guides/advanced-features/rspack-start.mdx +62 -0
  260. package/docs/zh/guides/advanced-features/ssr.mdx +507 -0
  261. package/docs/zh/guides/basic-features/mock.mdx +99 -0
  262. package/docs/zh/guides/get-started/introduction.mdx +47 -0
  263. package/docs/zh/guides/get-started/quick-start.mdx +133 -0
  264. package/docs/zh/guides/topic-detail/changesets/changelog.mdx +238 -0
  265. package/docs/zh/guides/topic-detail/changesets/commit.mdx +271 -0
  266. package/docs/zh/guides/topic-detail/changesets/release-note.mdx +259 -0
  267. package/docs/zh/guides/topic-detail/framework-plugin/plugin-api.mdx +118 -0
  268. package/docs/zh/guides/topic-detail/generator/codesmith/api/fs.mdx +54 -0
  269. package/docs/zh/guides/topic-detail/generator/plugin/develop.mdx +125 -0
  270. package/docs/zh/guides/topic-detail/monorepo/create-sub-project.mdx +67 -0
  271. package/docs/zh/guides/topic-detail/monorepo/sub-project-interface.mdx +179 -0
  272. package/docs/zh/index.md +4 -0
  273. package/modern.config.ts +156 -0
  274. package/package.json +14 -5
  275. package/src/components/ContentCard/index.module.scss +61 -0
  276. package/src/components/ContentCard/index.tsx +25 -0
  277. package/src/components/FeatureLayout/index.module.css +8 -0
  278. package/src/components/FeatureLayout/index.tsx +8 -0
  279. package/src/components/Footer/index.tsx +131 -0
  280. package/src/components/Footer/styles.module.scss +49 -0
  281. package/src/components/ListCard/index.module.css +58 -0
  282. package/src/components/ListCard/index.tsx +26 -0
  283. package/src/components/SecondaryTitle/index.module.css +14 -0
  284. package/src/components/SecondaryTitle/index.tsx +15 -0
  285. package/src/global.d.ts +28 -0
  286. package/src/i18n/enUS.ts +50 -0
  287. package/src/i18n/index.ts +18 -0
  288. package/src/i18n/zhCN.ts +50 -0
  289. package/src/index.ts +9 -0
  290. package/src/pages/index.module.scss +238 -0
  291. package/src/pages/index.tsx +167 -0
  292. package/static/img/favicon.ico +0 -0
  293. package/static/img/features/ai.svg +1 -0
  294. package/static/img/features/api.svg +1 -0
  295. package/static/img/features/app.svg +1 -0
  296. package/static/img/features/blocks.svg +1 -0
  297. package/static/img/features/browser.svg +12 -0
  298. package/static/img/features/cloud.svg +1 -0
  299. package/static/img/features/coding-backend.svg +1 -0
  300. package/static/img/features/compiler.svg +1 -0
  301. package/static/img/features/css-file.svg +1 -0
  302. package/static/img/features/customize.svg +1 -0
  303. package/static/img/features/developer.svg +1 -0
  304. package/static/img/features/dynamic.svg +1 -0
  305. package/static/img/features/editor.svg +1 -0
  306. package/static/img/features/framework-config.svg +1 -0
  307. package/static/img/features/framework.svg +1 -0
  308. package/static/img/features/frameworks.svg +1 -0
  309. package/static/img/features/html.svg +1 -0
  310. package/static/img/features/icon2.svg +1 -0
  311. package/static/img/features/javascript.svg +1 -0
  312. package/static/img/features/monorepo.svg +1 -0
  313. package/static/img/features/product.svg +1 -0
  314. package/static/img/features/server-network.svg +1 -0
  315. package/static/img/features/serverless.svg +1 -0
  316. package/static/img/features/test.svg +1 -0
  317. package/static/img/features/trinity.svg +1 -0
  318. package/static/img/features/unity.svg +1 -0
  319. package/static/img/features/url.svg +1 -0
  320. package/static/img/features/visual.svg +1 -0
  321. package/static/img/features/web-server.svg +1 -0
  322. package/.eslintrc.js +0 -12
  323. package/.turbo/turbo-build.log +0 -4
  324. package/en/apis/app/hooks/api/framework/lambda.mdx +0 -57
  325. package/en/apis/app/hooks/api/functions/api.mdx +0 -81
  326. package/en/apis/app/hooks/src/routes.mdx +0 -90
  327. package/en/apis/app/hooks/src/server.mdx +0 -34
  328. package/en/apis/app/runtime/router/router.mdx +0 -262
  329. package/en/apis/app/runtime/web-server/hook.mdx +0 -133
  330. package/en/apis/app/runtime/web-server/middleware.mdx +0 -134
  331. package/en/components/enable-bff.mdx +0 -31
  332. package/en/components/init-app.mdx +0 -43
  333. package/en/components/init-rspack-app.mdx +0 -7
  334. package/en/components/prerequisites.mdx +0 -20
  335. package/en/configure/app/dev/asset-prefix.mdx +0 -13
  336. package/en/configure/app/dev/before-start-url.mdx +0 -13
  337. package/en/configure/app/dev/hmr.mdx +0 -13
  338. package/en/configure/app/dev/host.mdx +0 -13
  339. package/en/configure/app/dev/https.mdx +0 -13
  340. package/en/configure/app/dev/port.mdx +0 -13
  341. package/en/configure/app/dev/progress-bar.mdx +0 -13
  342. package/en/configure/app/dev/start-url.mdx +0 -13
  343. package/en/configure/app/experiments/lazy-compilation.mdx +0 -13
  344. package/en/configure/app/html/app-icon.mdx +0 -13
  345. package/en/configure/app/html/crossorigin.mdx +0 -13
  346. package/en/configure/app/html/disable-html-folder.mdx +0 -13
  347. package/en/configure/app/html/favicon-by-entries.mdx +0 -13
  348. package/en/configure/app/html/favicon.mdx +0 -13
  349. package/en/configure/app/html/inject-by-entries.mdx +0 -13
  350. package/en/configure/app/html/inject.mdx +0 -13
  351. package/en/configure/app/html/meta-by-entries.mdx +0 -13
  352. package/en/configure/app/html/meta.mdx +0 -13
  353. package/en/configure/app/html/mount-id.mdx +0 -13
  354. package/en/configure/app/html/tags-by-entries.mdx +0 -13
  355. package/en/configure/app/html/tags.mdx +0 -13
  356. package/en/configure/app/html/template-by-entries.mdx +0 -13
  357. package/en/configure/app/html/template-parameters-by-entries.mdx +0 -13
  358. package/en/configure/app/html/template-parameters.mdx +0 -13
  359. package/en/configure/app/html/template.mdx +0 -13
  360. package/en/configure/app/html/title-by-entries.mdx +0 -13
  361. package/en/configure/app/html/title.mdx +0 -13
  362. package/en/configure/app/output/asset-prefix.mdx +0 -13
  363. package/en/configure/app/output/assets-retry.mdx +0 -13
  364. package/en/configure/app/output/charset.mdx +0 -13
  365. package/en/configure/app/output/clean-dist-path.mdx +0 -13
  366. package/en/configure/app/output/convert-to-rem.mdx +0 -13
  367. package/en/configure/app/output/copy.mdx +0 -13
  368. package/en/configure/app/output/css-module-local-ident-name.mdx +0 -13
  369. package/en/configure/app/output/data-uri-limit.mdx +0 -13
  370. package/en/configure/app/output/disable-css-extract.mdx +0 -13
  371. package/en/configure/app/output/disable-css-module-extension.mdx +0 -13
  372. package/en/configure/app/output/disable-filename-hash.mdx +0 -13
  373. package/en/configure/app/output/disable-inline-runtime-chunk.mdx +0 -13
  374. package/en/configure/app/output/disable-minimize.mdx +0 -13
  375. package/en/configure/app/output/disable-source-map.mdx +0 -13
  376. package/en/configure/app/output/disable-ts-checker.mdx +0 -13
  377. package/en/configure/app/output/dist-path.mdx +0 -13
  378. package/en/configure/app/output/enable-asset-fallback.mdx +0 -13
  379. package/en/configure/app/output/enable-asset-manifest.mdx +0 -13
  380. package/en/configure/app/output/enable-css-module-tsdeclaration.mdx +0 -13
  381. package/en/configure/app/output/enable-inline-scripts.mdx +0 -13
  382. package/en/configure/app/output/enable-inline-styles.mdx +0 -13
  383. package/en/configure/app/output/enable-latest-decorators.mdx +0 -13
  384. package/en/configure/app/output/externals.mdx +0 -13
  385. package/en/configure/app/output/filename.mdx +0 -13
  386. package/en/configure/app/output/legal-comments.mdx +0 -13
  387. package/en/configure/app/output/override-browserslist.mdx +0 -13
  388. package/en/configure/app/output/polyfill.mdx +0 -13
  389. package/en/configure/app/output/ssg.mdx +0 -196
  390. package/en/configure/app/output/svg-default-export.mdx +0 -13
  391. package/en/configure/app/performance/build-cache.mdx +0 -13
  392. package/en/configure/app/performance/bundle-analyze.mdx +0 -13
  393. package/en/configure/app/performance/chunk-split.mdx +0 -13
  394. package/en/configure/app/performance/print-file-size.mdx +0 -13
  395. package/en/configure/app/performance/profile.mdx +0 -13
  396. package/en/configure/app/performance/remove-console.mdx +0 -13
  397. package/en/configure/app/performance/remove-moment-locale.mdx +0 -13
  398. package/en/configure/app/security/check-syntax.mdx +0 -13
  399. package/en/configure/app/security/sri.mdx +0 -13
  400. package/en/configure/app/server/public-routes.mdx +0 -26
  401. package/en/configure/app/server/ssr.mdx +0 -38
  402. package/en/configure/app/source/alias.mdx +0 -13
  403. package/en/configure/app/source/compile-js-data-uri.mdx +0 -13
  404. package/en/configure/app/source/define.mdx +0 -13
  405. package/en/configure/app/source/design-system.mdx +0 -1175
  406. package/en/configure/app/source/disable-entry-dirs.mdx +0 -39
  407. package/en/configure/app/source/entries.mdx +0 -123
  408. package/en/configure/app/source/exclude.mdx +0 -13
  409. package/en/configure/app/source/global-vars.mdx +0 -13
  410. package/en/configure/app/source/include.mdx +0 -13
  411. package/en/configure/app/source/module-scopes.mdx +0 -13
  412. package/en/configure/app/source/pre-entry.mdx +0 -13
  413. package/en/configure/app/source/resolve-extension-prefix.mdx +0 -13
  414. package/en/configure/app/source/resolve-main-fields.mdx +0 -13
  415. package/en/configure/app/tools/autoprefixer.mdx +0 -13
  416. package/en/configure/app/tools/babel.mdx +0 -13
  417. package/en/configure/app/tools/css-extract.mdx +0 -13
  418. package/en/configure/app/tools/css-loader.mdx +0 -13
  419. package/en/configure/app/tools/dev-server.mdx +0 -13
  420. package/en/configure/app/tools/html-plugin.mdx +0 -13
  421. package/en/configure/app/tools/inspector.mdx +0 -13
  422. package/en/configure/app/tools/less.mdx +0 -13
  423. package/en/configure/app/tools/minify-css.mdx +0 -13
  424. package/en/configure/app/tools/postcss.mdx +0 -13
  425. package/en/configure/app/tools/pug.mdx +0 -13
  426. package/en/configure/app/tools/rspack.mdx +0 -13
  427. package/en/configure/app/tools/sass.mdx +0 -13
  428. package/en/configure/app/tools/style-loader.mdx +0 -13
  429. package/en/configure/app/tools/styled-components.mdx +0 -13
  430. package/en/configure/app/tools/terser.mdx +0 -13
  431. package/en/configure/app/tools/ts-checker.mdx +0 -13
  432. package/en/configure/app/tools/ts-loader.mdx +0 -13
  433. package/en/configure/app/tools/webpack-chain.mdx +0 -13
  434. package/en/configure/app/tools/webpack.mdx +0 -13
  435. package/en/guides/advanced-features/code-split.mdx +0 -80
  436. package/en/guides/advanced-features/compatibility.mdx +0 -78
  437. package/en/guides/advanced-features/eslint.mdx +0 -148
  438. package/en/guides/advanced-features/rspack-start.mdx +0 -65
  439. package/en/guides/advanced-features/ssg.mdx +0 -116
  440. package/en/guides/advanced-features/ssr.mdx +0 -513
  441. package/en/guides/advanced-features/testing.mdx +0 -46
  442. package/en/guides/advanced-features/web-server.mdx +0 -124
  443. package/en/guides/basic-features/data-fetch.mdx +0 -404
  444. package/en/guides/basic-features/env-vars.mdx +0 -174
  445. package/en/guides/basic-features/html.mdx +0 -247
  446. package/en/guides/basic-features/proxy.mdx +0 -61
  447. package/en/guides/get-started/introduction.mdx +0 -34
  448. package/en/guides/get-started/quick-start.mdx +0 -162
  449. package/en/guides/topic-detail/framework-plugin/extend.mdx +0 -164
  450. package/en/guides/topic-detail/framework-plugin/hook-list.mdx +0 -829
  451. package/en/guides/topic-detail/framework-plugin/hook.mdx +0 -188
  452. package/en/guides/topic-detail/framework-plugin/implement.mdx +0 -246
  453. package/en/guides/topic-detail/framework-plugin/plugin-api.mdx +0 -117
  454. package/en/guides/topic-detail/framework-plugin/relationship.mdx +0 -119
  455. package/en/guides/topic-detail/generator/codesmith/api/fs.mdx +0 -54
  456. package/en/guides/topic-detail/generator/codesmith/api/npm.mdx +0 -48
  457. package/en/guides/topic-detail/generator/codesmith/develop.mdx +0 -53
  458. package/en/guides/topic-detail/generator/config/app.mdx +0 -82
  459. package/en/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +0 -55
  460. package/en/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +0 -55
  461. package/en/guides/topic-detail/generator/plugin/api/npm/install.mdx +0 -18
  462. package/en/guides/topic-detail/generator/plugin/develop.mdx +0 -125
  463. package/en/guides/topic-detail/generator/project.mdx +0 -118
  464. package/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -282
  465. package/en/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -57
  466. package/en/guides/topic-detail/model/computed-state.mdx +0 -153
  467. package/en/guides/troubleshooting/cli.mdx +0 -63
  468. package/en/tutorials/first-app/c03-css.mdx +0 -323
  469. package/scripts/config.ts +0 -96
  470. package/scripts/summary.en.json +0 -1
  471. package/scripts/summary.zh.json +0 -1
  472. package/scripts/sync.ts +0 -57
  473. package/tsconfig.json +0 -7
  474. package/zh/apis/app/runtime/web-server/hook.mdx +0 -132
  475. package/zh/apis/app/runtime/web-server/middleware.mdx +0 -131
  476. package/zh/apis/monorepo/commands/new.mdx +0 -39
  477. package/zh/blog/index.md +0 -6
  478. package/zh/components/default-mwa-generate.mdx +0 -5
  479. package/zh/components/init-app.mdx +0 -44
  480. package/zh/components/init-rspack-app.mdx +0 -7
  481. package/zh/components/prerequisites.mdx +0 -20
  482. package/zh/configure/app/dev/asset-prefix.mdx +0 -13
  483. package/zh/configure/app/dev/before-start-url.mdx +0 -13
  484. package/zh/configure/app/dev/hmr.mdx +0 -13
  485. package/zh/configure/app/dev/host.mdx +0 -13
  486. package/zh/configure/app/dev/https.mdx +0 -13
  487. package/zh/configure/app/dev/port.mdx +0 -13
  488. package/zh/configure/app/dev/progress-bar.mdx +0 -13
  489. package/zh/configure/app/dev/start-url.mdx +0 -13
  490. package/zh/configure/app/experiments/lazy-compilation.mdx +0 -13
  491. package/zh/configure/app/html/app-icon.mdx +0 -13
  492. package/zh/configure/app/html/crossorigin.mdx +0 -13
  493. package/zh/configure/app/html/disable-html-folder.mdx +0 -13
  494. package/zh/configure/app/html/favicon-by-entries.mdx +0 -13
  495. package/zh/configure/app/html/favicon.mdx +0 -13
  496. package/zh/configure/app/html/inject-by-entries.mdx +0 -13
  497. package/zh/configure/app/html/inject.mdx +0 -13
  498. package/zh/configure/app/html/meta-by-entries.mdx +0 -13
  499. package/zh/configure/app/html/meta.mdx +0 -13
  500. package/zh/configure/app/html/mount-id.mdx +0 -13
  501. package/zh/configure/app/html/tags-by-entries.mdx +0 -13
  502. package/zh/configure/app/html/tags.mdx +0 -13
  503. package/zh/configure/app/html/template-by-entries.mdx +0 -13
  504. package/zh/configure/app/html/template-parameters-by-entries.mdx +0 -13
  505. package/zh/configure/app/html/template-parameters.mdx +0 -13
  506. package/zh/configure/app/html/template.mdx +0 -13
  507. package/zh/configure/app/html/title-by-entries.mdx +0 -13
  508. package/zh/configure/app/html/title.mdx +0 -13
  509. package/zh/configure/app/output/asset-prefix.mdx +0 -13
  510. package/zh/configure/app/output/assets-retry.mdx +0 -13
  511. package/zh/configure/app/output/charset.mdx +0 -13
  512. package/zh/configure/app/output/clean-dist-path.mdx +0 -13
  513. package/zh/configure/app/output/convert-to-rem.mdx +0 -13
  514. package/zh/configure/app/output/copy.mdx +0 -13
  515. package/zh/configure/app/output/css-module-local-ident-name.mdx +0 -13
  516. package/zh/configure/app/output/data-uri-limit.mdx +0 -13
  517. package/zh/configure/app/output/disable-css-extract.mdx +0 -13
  518. package/zh/configure/app/output/disable-css-module-extension.mdx +0 -13
  519. package/zh/configure/app/output/disable-filename-hash.mdx +0 -13
  520. package/zh/configure/app/output/disable-inline-runtime-chunk.mdx +0 -13
  521. package/zh/configure/app/output/disable-minimize.mdx +0 -13
  522. package/zh/configure/app/output/disable-source-map.mdx +0 -13
  523. package/zh/configure/app/output/disable-ts-checker.mdx +0 -13
  524. package/zh/configure/app/output/dist-path.mdx +0 -13
  525. package/zh/configure/app/output/enable-asset-fallback.mdx +0 -13
  526. package/zh/configure/app/output/enable-asset-manifest.mdx +0 -13
  527. package/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +0 -13
  528. package/zh/configure/app/output/enable-inline-scripts.mdx +0 -13
  529. package/zh/configure/app/output/enable-inline-styles.mdx +0 -13
  530. package/zh/configure/app/output/enable-latest-decorators.mdx +0 -13
  531. package/zh/configure/app/output/externals.mdx +0 -13
  532. package/zh/configure/app/output/filename.mdx +0 -13
  533. package/zh/configure/app/output/legal-comments.mdx +0 -13
  534. package/zh/configure/app/output/override-browserslist.mdx +0 -13
  535. package/zh/configure/app/output/polyfill.mdx +0 -13
  536. package/zh/configure/app/output/svg-default-export.mdx +0 -13
  537. package/zh/configure/app/performance/build-cache.mdx +0 -13
  538. package/zh/configure/app/performance/bundle-analyze.mdx +0 -13
  539. package/zh/configure/app/performance/chunk-split.mdx +0 -13
  540. package/zh/configure/app/performance/print-file-size.mdx +0 -13
  541. package/zh/configure/app/performance/profile.mdx +0 -13
  542. package/zh/configure/app/performance/remove-console.mdx +0 -13
  543. package/zh/configure/app/performance/remove-moment-locale.mdx +0 -13
  544. package/zh/configure/app/security/check-syntax.mdx +0 -13
  545. package/zh/configure/app/security/sri.mdx +0 -13
  546. package/zh/configure/app/source/alias.mdx +0 -13
  547. package/zh/configure/app/source/compile-js-data-uri.mdx +0 -13
  548. package/zh/configure/app/source/define.mdx +0 -13
  549. package/zh/configure/app/source/exclude.mdx +0 -13
  550. package/zh/configure/app/source/global-vars.mdx +0 -13
  551. package/zh/configure/app/source/include.mdx +0 -13
  552. package/zh/configure/app/source/module-scopes.mdx +0 -13
  553. package/zh/configure/app/source/pre-entry.mdx +0 -13
  554. package/zh/configure/app/source/resolve-extension-prefix.mdx +0 -13
  555. package/zh/configure/app/source/resolve-main-fields.mdx +0 -13
  556. package/zh/configure/app/tools/autoprefixer.mdx +0 -13
  557. package/zh/configure/app/tools/babel.mdx +0 -13
  558. package/zh/configure/app/tools/css-extract.mdx +0 -13
  559. package/zh/configure/app/tools/css-loader.mdx +0 -13
  560. package/zh/configure/app/tools/dev-server.mdx +0 -13
  561. package/zh/configure/app/tools/html-plugin.mdx +0 -13
  562. package/zh/configure/app/tools/inspector.mdx +0 -13
  563. package/zh/configure/app/tools/less.mdx +0 -13
  564. package/zh/configure/app/tools/minify-css.mdx +0 -13
  565. package/zh/configure/app/tools/postcss.mdx +0 -13
  566. package/zh/configure/app/tools/pug.mdx +0 -13
  567. package/zh/configure/app/tools/rspack.mdx +0 -13
  568. package/zh/configure/app/tools/sass.mdx +0 -13
  569. package/zh/configure/app/tools/style-loader.mdx +0 -13
  570. package/zh/configure/app/tools/styled-components.mdx +0 -13
  571. package/zh/configure/app/tools/terser.mdx +0 -13
  572. package/zh/configure/app/tools/ts-checker.mdx +0 -13
  573. package/zh/configure/app/tools/ts-loader.mdx +0 -13
  574. package/zh/configure/app/tools/webpack-chain.mdx +0 -13
  575. package/zh/configure/app/tools/webpack.mdx +0 -13
  576. package/zh/guides/advanced-features/compatibility.mdx +0 -76
  577. package/zh/guides/advanced-features/eslint.mdx +0 -152
  578. package/zh/guides/advanced-features/rspack-start.mdx +0 -65
  579. package/zh/guides/advanced-features/ssr.mdx +0 -501
  580. package/zh/guides/basic-features/mock.mdx +0 -99
  581. package/zh/guides/get-started/introduction.mdx +0 -31
  582. package/zh/guides/get-started/quick-start.mdx +0 -131
  583. package/zh/guides/topic-detail/changesets/changelog.mdx +0 -238
  584. package/zh/guides/topic-detail/changesets/commit.mdx +0 -271
  585. package/zh/guides/topic-detail/changesets/release-note.mdx +0 -259
  586. package/zh/guides/topic-detail/framework-plugin/plugin-api.mdx +0 -117
  587. package/zh/guides/topic-detail/generator/codesmith/api/fs.mdx +0 -54
  588. package/zh/guides/topic-detail/generator/plugin/develop.mdx +0 -125
  589. package/zh/guides/topic-detail/monorepo/create-sub-project.mdx +0 -67
  590. package/zh/guides/topic-detail/monorepo/sub-project-interface.mdx +0 -179
  591. package/zh/index.md +0 -4
  592. /package/{en → docs/en}/apis/app/commands.mdx +0 -0
  593. /package/{en → docs/en}/apis/app/hooks/_category_.json +0 -0
  594. /package/{en → docs/en}/apis/app/hooks/api/_category_.json +0 -0
  595. /package/{en → docs/en}/apis/app/hooks/api/framework/_category_.json +0 -0
  596. /package/{en → docs/en}/apis/app/hooks/api/functions/_category_.json +0 -0
  597. /package/{en → docs/en}/apis/app/hooks/api/functions/app.mdx +0 -0
  598. /package/{en → docs/en}/apis/app/hooks/api/functions/common.mdx +0 -0
  599. /package/{en → docs/en}/apis/app/hooks/api/test.mdx +0 -0
  600. /package/{en → docs/en}/apis/app/hooks/config/_category_.json +0 -0
  601. /package/{en → docs/en}/apis/app/hooks/config/html.mdx +0 -0
  602. /package/{en → docs/en}/apis/app/hooks/config/icon.mdx +0 -0
  603. /package/{en → docs/en}/apis/app/hooks/config/mock.mdx +0 -0
  604. /package/{en → docs/en}/apis/app/hooks/config/public.mdx +0 -0
  605. /package/{en → docs/en}/apis/app/hooks/config/storybook.mdx +0 -0
  606. /package/{en → docs/en}/apis/app/hooks/config/upload.mdx +0 -0
  607. /package/{en → docs/en}/apis/app/hooks/modern-config.mdx +0 -0
  608. /package/{en → docs/en}/apis/app/hooks/server/_category_.json +0 -0
  609. /package/{en → docs/en}/apis/app/hooks/server/index_.mdx +0 -0
  610. /package/{en → docs/en}/apis/app/hooks/server/test.mdx +0 -0
  611. /package/{en → docs/en}/apis/app/hooks/shared.mdx +0 -0
  612. /package/{en → docs/en}/apis/app/hooks/src/_category_.json +0 -0
  613. /package/{en → docs/en}/apis/app/hooks/src/app.mdx +0 -0
  614. /package/{en → docs/en}/apis/app/hooks/src/index_.mdx +0 -0
  615. /package/{en → docs/en}/apis/app/hooks/src/pages.mdx +0 -0
  616. /package/{en → docs/en}/apis/app/hooks/src/stories.mdx +0 -0
  617. /package/{en → docs/en}/apis/app/hooks/src/test.mdx +0 -0
  618. /package/{en → docs/en}/apis/app/runtime/_category_.json +0 -0
  619. /package/{en → docs/en}/apis/app/runtime/app/_category_.json +0 -0
  620. /package/{en → docs/en}/apis/app/runtime/app/define-config.mdx +0 -0
  621. /package/{en → docs/en}/apis/app/runtime/bff/_category_.json +0 -0
  622. /package/{en → docs/en}/apis/app/runtime/bff/hook.mdx +0 -0
  623. /package/{en → docs/en}/apis/app/runtime/bff/use-context.mdx +0 -0
  624. /package/{en → docs/en}/apis/app/runtime/core/_category_.json +0 -0
  625. /package/{en → docs/en}/apis/app/runtime/core/bootstrap.mdx +0 -0
  626. /package/{en → docs/en}/apis/app/runtime/core/create-app.mdx +0 -0
  627. /package/{en → docs/en}/apis/app/runtime/core/use-loader.mdx +0 -0
  628. /package/{en → docs/en}/apis/app/runtime/core/use-module-apps.mdx +0 -0
  629. /package/{en → docs/en}/apis/app/runtime/core/use-runtime-context.mdx +0 -0
  630. /package/{en → docs/en}/apis/app/runtime/model/Provider.mdx +0 -0
  631. /package/{en → docs/en}/apis/app/runtime/model/_category_.json +0 -0
  632. /package/{en → docs/en}/apis/app/runtime/model/auto-actions.mdx +0 -0
  633. /package/{en → docs/en}/apis/app/runtime/model/connect.mdx +0 -0
  634. /package/{en → docs/en}/apis/app/runtime/model/create-app.mdx +0 -0
  635. /package/{en → docs/en}/apis/app/runtime/model/create-store.mdx +0 -0
  636. /package/{en → docs/en}/apis/app/runtime/model/handle-effect.mdx +0 -0
  637. /package/{en → docs/en}/apis/app/runtime/model/model_.mdx +0 -0
  638. /package/{en → docs/en}/apis/app/runtime/model/use-local-model.mdx +0 -0
  639. /package/{en → docs/en}/apis/app/runtime/model/use-model.mdx +0 -0
  640. /package/{en → docs/en}/apis/app/runtime/model/use-static-model.mdx +0 -0
  641. /package/{en → docs/en}/apis/app/runtime/model/use-store.mdx +0 -0
  642. /package/{en → docs/en}/apis/app/runtime/router/_category_.json +0 -0
  643. /package/{en → docs/en}/apis/app/runtime/ssr/_category_.json +0 -0
  644. /package/{en → docs/en}/apis/app/runtime/ssr/no-ssr.mdx +0 -0
  645. /package/{en → docs/en}/apis/app/runtime/ssr/pre-render.mdx +0 -0
  646. /package/{en → docs/en}/apis/app/runtime/testing/_category_.json +0 -0
  647. /package/{en → docs/en}/apis/app/runtime/testing/act.mdx +0 -0
  648. /package/{en → docs/en}/apis/app/runtime/testing/cleanup.mdx +0 -0
  649. /package/{en → docs/en}/apis/app/runtime/testing/render.mdx +0 -0
  650. /package/{en → docs/en}/apis/app/runtime/testing/renderApp.mdx +0 -0
  651. /package/{en → docs/en}/apis/app/runtime/utility/_category_.json +0 -0
  652. /package/{en → docs/en}/apis/app/runtime/utility/css-in-js.mdx +0 -0
  653. /package/{en → docs/en}/apis/app/runtime/utility/head.mdx +0 -0
  654. /package/{en → docs/en}/apis/app/runtime/utility/loadable.mdx +0 -0
  655. /package/{en → docs/en}/apis/app/runtime/web-server/_category_.json +0 -0
  656. /package/{en → docs/en}/components/debug-app.mdx +0 -0
  657. /package/{en → docs/en}/components/enable-micro-frontend.mdx +0 -0
  658. /package/{en → docs/en}/components/global-proxy-config.mdx +0 -0
  659. /package/{en → docs/en}/components/global-proxy.mdx +0 -0
  660. /package/{en → docs/en}/components/micro-master-manifest-config.mdx +0 -0
  661. /package/{en → docs/en}/components/micro-runtime-config.mdx +0 -0
  662. /package/{en → docs/en}/components/reduck-migration.mdx +0 -0
  663. /package/{en → docs/en}/components/reduck-tip.mdx +0 -0
  664. /package/{en → docs/en}/components/router-legacy-tip.mdx +0 -0
  665. /package/{en → docs/en}/configure/app/auto-load-plugin.mdx +0 -0
  666. /package/{en → docs/en}/configure/app/bff/_category_.json +0 -0
  667. /package/{en → docs/en}/configure/app/bff/enable-handle-web.mdx +0 -0
  668. /package/{en → docs/en}/configure/app/bff/prefix.mdx +0 -0
  669. /package/{en → docs/en}/configure/app/bff/proxy.mdx +0 -0
  670. /package/{en → docs/en}/configure/app/builder-plugins.mdx +0 -0
  671. /package/{en → docs/en}/configure/app/deploy/_category_.json +0 -0
  672. /package/{en → docs/en}/configure/app/deploy/microFrontend.mdx +0 -0
  673. /package/{en → docs/en}/configure/app/dev/_category_.json +0 -0
  674. /package/{en → docs/en}/configure/app/dev/proxy.mdx +0 -0
  675. /package/{en → docs/en}/configure/app/experiments/_category_.json +0 -0
  676. /package/{en → docs/en}/configure/app/html/_category_.json +0 -0
  677. /package/{en → docs/en}/configure/app/output/_category_.json +0 -0
  678. /package/{en → docs/en}/configure/app/output/disable-node-polyfill.mdx +0 -0
  679. /package/{en → docs/en}/configure/app/performance/_category_.json +0 -0
  680. /package/{en → docs/en}/configure/app/plugins.mdx +0 -0
  681. /package/{en → docs/en}/configure/app/runtime/_category_.json +0 -0
  682. /package/{en → docs/en}/configure/app/runtime/intro.mdx +0 -0
  683. /package/{en → docs/en}/configure/app/runtime/master-app.mdx +0 -0
  684. /package/{en → docs/en}/configure/app/runtime/router.mdx +0 -0
  685. /package/{en → docs/en}/configure/app/runtime/state.mdx +0 -0
  686. /package/{en → docs/en}/configure/app/security/_category_.json +0 -0
  687. /package/{en → docs/en}/configure/app/server/_category_.json +0 -0
  688. /package/{en → docs/en}/configure/app/server/base-url.mdx +0 -0
  689. /package/{en → docs/en}/configure/app/server/enable-framework-ext.mdx +0 -0
  690. /package/{en → docs/en}/configure/app/server/port.mdx +0 -0
  691. /package/{en → docs/en}/configure/app/server/routes.mdx +0 -0
  692. /package/{en → docs/en}/configure/app/server/ssr-by-entries.mdx +0 -0
  693. /package/{en → docs/en}/configure/app/source/_category_.json +0 -0
  694. /package/{en → docs/en}/configure/app/source/config-dir.mdx +0 -0
  695. /package/{en → docs/en}/configure/app/source/disable-default-entries.mdx +0 -0
  696. /package/{en → docs/en}/configure/app/source/enable-async-entry.mdx +0 -0
  697. /package/{en → docs/en}/configure/app/source/entries-dir.mdx +0 -0
  698. /package/{en → docs/en}/configure/app/testing/_category_.json +0 -0
  699. /package/{en → docs/en}/configure/app/testing/transformer.mdx +0 -0
  700. /package/{en → docs/en}/configure/app/tools/_category_.json +0 -0
  701. /package/{en → docs/en}/configure/app/tools/esbuild.mdx +0 -0
  702. /package/{en → docs/en}/configure/app/tools/jest.mdx +0 -0
  703. /package/{en → docs/en}/configure/app/tools/swc.mdx +0 -0
  704. /package/{en → docs/en}/configure/app/tools/tailwindcss.mdx +0 -0
  705. /package/{en → docs/en}/configure/app/usage.mdx +0 -0
  706. /package/{en → docs/en}/guides/advanced-features/_category_.json +0 -0
  707. /package/{en → docs/en}/guides/advanced-features/bff/_category_.json +0 -0
  708. /package/{en → docs/en}/guides/advanced-features/bff/bff-proxy.mdx +0 -0
  709. /package/{en → docs/en}/guides/advanced-features/bff/frameworks.mdx +0 -0
  710. /package/{en → docs/en}/guides/advanced-features/bff/function.mdx +0 -0
  711. /package/{en → docs/en}/guides/advanced-features/bff/index.mdx +0 -0
  712. /package/{en → docs/en}/guides/advanced-features/bff/type.mdx +0 -0
  713. /package/{en → docs/en}/guides/advanced-features/low-level.mdx +0 -0
  714. /package/{en → docs/en}/guides/basic-features/_category_.json +0 -0
  715. /package/{en → docs/en}/guides/basic-features/alias.mdx +0 -0
  716. /package/{en → docs/en}/guides/basic-features/css.mdx +0 -0
  717. /package/{en → docs/en}/guides/basic-features/mock.mdx +0 -0
  718. /package/{en → docs/en}/guides/basic-features/routes.mdx +0 -0
  719. /package/{en → docs/en}/guides/concept/_category_.json +0 -0
  720. /package/{en → docs/en}/guides/concept/builder.mdx +0 -0
  721. /package/{en → docs/en}/guides/concept/entries.mdx +0 -0
  722. /package/{en → docs/en}/guides/get-started/_category_.json +0 -0
  723. /package/{en → docs/en}/guides/get-started/upgrade.mdx +0 -0
  724. /package/{en → docs/en}/guides/topic-detail/_category_.json +0 -0
  725. /package/{en → docs/en}/guides/topic-detail/framework-plugin/_category_.json +0 -0
  726. /package/{en → docs/en}/guides/topic-detail/framework-plugin/introduction.mdx +0 -0
  727. /package/{en → docs/en}/guides/topic-detail/framework-plugin/lifecycle.mdx +0 -0
  728. /package/{en → docs/en}/guides/topic-detail/generator/_category_.json +0 -0
  729. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/_category_.json +0 -0
  730. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/_category_.json +0 -0
  731. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/app.mdx +0 -0
  732. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/ejs.mdx +0 -0
  733. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/git.mdx +0 -0
  734. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/handlebars.mdx +0 -0
  735. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/json.mdx +0 -0
  736. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/introduce.mdx +0 -0
  737. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/run-in-js.mdx +0 -0
  738. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/structure.mdx +0 -0
  739. /package/{en → docs/en}/guides/topic-detail/generator/config/_category_.json +0 -0
  740. /package/{en → docs/en}/guides/topic-detail/generator/config/common.mdx +0 -0
  741. /package/{en → docs/en}/guides/topic-detail/generator/config/module.mdx +0 -0
  742. /package/{en → docs/en}/guides/topic-detail/generator/config/monorepo.mdx +0 -0
  743. /package/{en → docs/en}/guides/topic-detail/generator/plugin/_category_.json +0 -0
  744. /package/{en → docs/en}/guides/topic-detail/generator/plugin/abstract.mdx +0 -0
  745. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/_category_.json +0 -0
  746. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/_category_.json +0 -0
  747. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addFile.mdx +0 -0
  748. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addHelper.mdx +0 -0
  749. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addManyFile.mdx +0 -0
  750. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addPartial.mdx +0 -0
  751. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/introduce.mdx +0 -0
  752. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/rmDir.mdx +0 -0
  753. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/rmFile.mdx +0 -0
  754. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateJSONFile.mdx +0 -0
  755. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateModernConfig.mdx +0 -0
  756. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.mdx +0 -0
  757. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/_category_.json +0 -0
  758. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/gitAddAndCommit.mdx +0 -0
  759. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/initGitRepo.mdx +0 -0
  760. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/isInGitRepo.mdx +0 -0
  761. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/_category_.json +0 -0
  762. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/afterForged.mdx +0 -0
  763. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/onForged.mdx +0 -0
  764. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/_category_.json +0 -0
  765. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/isFileExit.mdx +0 -0
  766. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/locale.mdx +0 -0
  767. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/readDir.mdx +0 -0
  768. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/_category_.json +0 -0
  769. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/setInput.mdx +0 -0
  770. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/setInputValue.mdx +0 -0
  771. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/type.mdx +0 -0
  772. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/introduce.mdx +0 -0
  773. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/_category_.json +0 -0
  774. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/createElement.mdx +0 -0
  775. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/createSubProject.mdx +0 -0
  776. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/enableFunc.mdx +0 -0
  777. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/introduce.mdx +0 -0
  778. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/npm/_category_.json +0 -0
  779. /package/{en → docs/en}/guides/topic-detail/generator/plugin/use.mdx +0 -0
  780. /package/{en → docs/en}/guides/topic-detail/micro-frontend/_category_.json +0 -0
  781. /package/{en → docs/en}/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -0
  782. /package/{en → docs/en}/guides/topic-detail/micro-frontend/c02-development.mdx +0 -0
  783. /package/{en → docs/en}/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -0
  784. /package/{en → docs/en}/guides/topic-detail/model/_category_.json +0 -0
  785. /package/{en → docs/en}/guides/topic-detail/model/auto-actions.mdx +0 -0
  786. /package/{en → docs/en}/guides/topic-detail/model/define-model.mdx +0 -0
  787. /package/{en → docs/en}/guides/topic-detail/model/faq.mdx +0 -0
  788. /package/{en → docs/en}/guides/topic-detail/model/manage-effects.mdx +0 -0
  789. /package/{en → docs/en}/guides/topic-detail/model/model-communicate.mdx +0 -0
  790. /package/{en → docs/en}/guides/topic-detail/model/performance.mdx +0 -0
  791. /package/{en → docs/en}/guides/topic-detail/model/quick-start.mdx +0 -0
  792. /package/{en → docs/en}/guides/topic-detail/model/redux-integration.mdx +0 -0
  793. /package/{en → docs/en}/guides/topic-detail/model/test-model.mdx +0 -0
  794. /package/{en → docs/en}/guides/topic-detail/model/typescript-best-practice.mdx +0 -0
  795. /package/{en → docs/en}/guides/topic-detail/model/use-model.mdx +0 -0
  796. /package/{en → docs/en}/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -0
  797. /package/{en → docs/en}/guides/troubleshooting/_category_.json +0 -0
  798. /package/{en → docs/en}/index.md +0 -0
  799. /package/{en → docs/en}/tutorials/first-app/_category_.json +0 -0
  800. /package/{en → docs/en}/tutorials/first-app/c01-start.mdx +0 -0
  801. /package/{en → docs/en}/tutorials/first-app/c02-component.mdx +0 -0
  802. /package/{en → docs/en}/tutorials/first-app/c04-routes.mdx +0 -0
  803. /package/{en → docs/en}/tutorials/first-app/c05-loader.mdx +0 -0
  804. /package/{en → docs/en}/tutorials/first-app/c06-model.mdx +0 -0
  805. /package/{en → docs/en}/tutorials/first-app/c07-container.mdx +0 -0
  806. /package/{en → docs/en}/tutorials/first-app/c08-entries.mdx +0 -0
  807. /package/{en → docs/en}/tutorials/foundations/_category_.json +0 -0
  808. /package/{en → docs/en}/tutorials/foundations/introduction.mdx +0 -0
  809. /package/{zh → docs/zh}/apis/app/commands.mdx +0 -0
  810. /package/{zh → docs/zh}/apis/app/hooks/_category_.json +0 -0
  811. /package/{zh → docs/zh}/apis/app/hooks/api/_category_.json +0 -0
  812. /package/{zh → docs/zh}/apis/app/hooks/api/framework/_category_.json +0 -0
  813. /package/{zh → docs/zh}/apis/app/hooks/api/framework/lambda.mdx +0 -0
  814. /package/{zh → docs/zh}/apis/app/hooks/api/functions/_category_.json +0 -0
  815. /package/{zh → docs/zh}/apis/app/hooks/api/functions/api.mdx +0 -0
  816. /package/{zh → docs/zh}/apis/app/hooks/api/functions/app.mdx +0 -0
  817. /package/{zh → docs/zh}/apis/app/hooks/api/functions/common.mdx +0 -0
  818. /package/{zh → docs/zh}/apis/app/hooks/api/test.mdx +0 -0
  819. /package/{zh → docs/zh}/apis/app/hooks/config/_category_.json +0 -0
  820. /package/{zh → docs/zh}/apis/app/hooks/config/html.mdx +0 -0
  821. /package/{zh → docs/zh}/apis/app/hooks/config/icon.mdx +0 -0
  822. /package/{zh → docs/zh}/apis/app/hooks/config/mock.mdx +0 -0
  823. /package/{zh → docs/zh}/apis/app/hooks/config/public.mdx +0 -0
  824. /package/{zh → docs/zh}/apis/app/hooks/config/storybook.mdx +0 -0
  825. /package/{zh → docs/zh}/apis/app/hooks/config/upload.mdx +0 -0
  826. /package/{zh → docs/zh}/apis/app/hooks/modern-config.mdx +0 -0
  827. /package/{zh → docs/zh}/apis/app/hooks/server/_category_.json +0 -0
  828. /package/{zh → docs/zh}/apis/app/hooks/server/index_.mdx +0 -0
  829. /package/{zh → docs/zh}/apis/app/hooks/server/test.mdx +0 -0
  830. /package/{zh → docs/zh}/apis/app/hooks/shared.mdx +0 -0
  831. /package/{zh → docs/zh}/apis/app/hooks/src/_category_.json +0 -0
  832. /package/{zh → docs/zh}/apis/app/hooks/src/app.mdx +0 -0
  833. /package/{zh → docs/zh}/apis/app/hooks/src/index_.mdx +0 -0
  834. /package/{zh → docs/zh}/apis/app/hooks/src/pages.mdx +0 -0
  835. /package/{zh → docs/zh}/apis/app/hooks/src/routes.mdx +0 -0
  836. /package/{zh → docs/zh}/apis/app/hooks/src/server.mdx +0 -0
  837. /package/{zh → docs/zh}/apis/app/hooks/src/stories.mdx +0 -0
  838. /package/{zh → docs/zh}/apis/app/hooks/src/test.mdx +0 -0
  839. /package/{zh → docs/zh}/apis/app/runtime/_category_.json +0 -0
  840. /package/{zh → docs/zh}/apis/app/runtime/app/_category_.json +0 -0
  841. /package/{zh → docs/zh}/apis/app/runtime/app/define-config.mdx +0 -0
  842. /package/{zh → docs/zh}/apis/app/runtime/bff/_category_.json +0 -0
  843. /package/{zh → docs/zh}/apis/app/runtime/bff/hook.mdx +0 -0
  844. /package/{zh → docs/zh}/apis/app/runtime/bff/use-context.mdx +0 -0
  845. /package/{zh → docs/zh}/apis/app/runtime/core/_category_.json +0 -0
  846. /package/{zh → docs/zh}/apis/app/runtime/core/bootstrap.mdx +0 -0
  847. /package/{zh → docs/zh}/apis/app/runtime/core/create-app.mdx +0 -0
  848. /package/{zh → docs/zh}/apis/app/runtime/core/use-loader.mdx +0 -0
  849. /package/{zh → docs/zh}/apis/app/runtime/core/use-module-apps.mdx +0 -0
  850. /package/{zh → docs/zh}/apis/app/runtime/core/use-runtime-context.mdx +0 -0
  851. /package/{zh → docs/zh}/apis/app/runtime/model/Provider.mdx +0 -0
  852. /package/{zh → docs/zh}/apis/app/runtime/model/_category_.json +0 -0
  853. /package/{zh → docs/zh}/apis/app/runtime/model/auto-actions.mdx +0 -0
  854. /package/{zh → docs/zh}/apis/app/runtime/model/connect.mdx +0 -0
  855. /package/{zh → docs/zh}/apis/app/runtime/model/create-app.mdx +0 -0
  856. /package/{zh → docs/zh}/apis/app/runtime/model/create-store.mdx +0 -0
  857. /package/{zh → docs/zh}/apis/app/runtime/model/handle-effect.mdx +0 -0
  858. /package/{zh → docs/zh}/apis/app/runtime/model/model_.mdx +0 -0
  859. /package/{zh → docs/zh}/apis/app/runtime/model/use-local-model.mdx +0 -0
  860. /package/{zh → docs/zh}/apis/app/runtime/model/use-model.mdx +0 -0
  861. /package/{zh → docs/zh}/apis/app/runtime/model/use-static-model.mdx +0 -0
  862. /package/{zh → docs/zh}/apis/app/runtime/model/use-store.mdx +0 -0
  863. /package/{zh → docs/zh}/apis/app/runtime/router/_category_.json +0 -0
  864. /package/{zh → docs/zh}/apis/app/runtime/router/router.mdx +0 -0
  865. /package/{zh → docs/zh}/apis/app/runtime/ssr/_category_.json +0 -0
  866. /package/{zh → docs/zh}/apis/app/runtime/ssr/no-ssr.mdx +0 -0
  867. /package/{zh → docs/zh}/apis/app/runtime/ssr/pre-render.mdx +0 -0
  868. /package/{zh → docs/zh}/apis/app/runtime/testing/_category_.json +0 -0
  869. /package/{zh → docs/zh}/apis/app/runtime/testing/act.mdx +0 -0
  870. /package/{zh → docs/zh}/apis/app/runtime/testing/cleanup.mdx +0 -0
  871. /package/{zh → docs/zh}/apis/app/runtime/testing/render.mdx +0 -0
  872. /package/{zh → docs/zh}/apis/app/runtime/testing/renderApp.mdx +0 -0
  873. /package/{zh → docs/zh}/apis/app/runtime/utility/_category_.json +0 -0
  874. /package/{zh → docs/zh}/apis/app/runtime/utility/css-in-js.mdx +0 -0
  875. /package/{zh → docs/zh}/apis/app/runtime/utility/head.mdx +0 -0
  876. /package/{zh → docs/zh}/apis/app/runtime/utility/loadable.mdx +0 -0
  877. /package/{zh → docs/zh}/apis/app/runtime/web-server/_category_.json +0 -0
  878. /package/{zh → docs/zh}/apis/monorepo/commands/_category_.json +0 -0
  879. /package/{zh → docs/zh}/apis/monorepo/commands/bump.mdx +0 -0
  880. /package/{zh → docs/zh}/apis/monorepo/commands/change.mdx +0 -0
  881. /package/{zh → docs/zh}/apis/monorepo/commands/clear.mdx +0 -0
  882. /package/{zh → docs/zh}/apis/monorepo/commands/deploy.mdx +0 -0
  883. /package/{zh → docs/zh}/apis/monorepo/commands/gen-release-note.mdx +0 -0
  884. /package/{zh → docs/zh}/apis/monorepo/commands/index.mdx +0 -0
  885. /package/{zh → docs/zh}/apis/monorepo/commands/lint.mdx +0 -0
  886. /package/{zh → docs/zh}/apis/monorepo/commands/pre.mdx +0 -0
  887. /package/{zh → docs/zh}/apis/monorepo/commands/release.mdx +0 -0
  888. /package/{zh → docs/zh}/apis/monorepo/commands/upgrade.mdx +0 -0
  889. /package/{zh → docs/zh}/apis/monorepo/hooks/_category_.json +0 -0
  890. /package/{zh → docs/zh}/apis/monorepo/hooks/apps.mdx +0 -0
  891. /package/{zh → docs/zh}/apis/monorepo/hooks/code-workspace.mdx +0 -0
  892. /package/{zh → docs/zh}/apis/monorepo/hooks/examples.mdx +0 -0
  893. /package/{zh → docs/zh}/apis/monorepo/hooks/features.mdx +0 -0
  894. /package/{zh → docs/zh}/apis/monorepo/hooks/index.mdx +0 -0
  895. /package/{zh → docs/zh}/apis/monorepo/hooks/packages.mdx +0 -0
  896. /package/{zh → docs/zh}/apis/monorepo/hooks/pnpm-workspace.mdx +0 -0
  897. /package/{zh → docs/zh}/apis/monorepo/hooks/pnpmfile.mdx +0 -0
  898. /package/{zh → docs/zh}/community/index.mdx +0 -0
  899. /package/{zh → docs/zh}/components/custom-router-micro-frontend.mdx +0 -0
  900. /package/{zh → docs/zh}/components/debug-app.mdx +0 -0
  901. /package/{zh → docs/zh}/components/deploy.mdx +0 -0
  902. /package/{zh → docs/zh}/components/enable-bff.mdx +0 -0
  903. /package/{zh → docs/zh}/components/enable-micro-frontend.mdx +0 -0
  904. /package/{zh → docs/zh}/components/global-proxy-config.mdx +0 -0
  905. /package/{zh → docs/zh}/components/global-proxy.mdx +0 -0
  906. /package/{zh → docs/zh}/components/micro-master-manifest-config.mdx +0 -0
  907. /package/{zh → docs/zh}/components/micro-runtime-config.mdx +0 -0
  908. /package/{zh → docs/zh}/components/reduck-migration.mdx +0 -0
  909. /package/{zh → docs/zh}/components/reduck-tip.mdx +0 -0
  910. /package/{zh → docs/zh}/components/release-note.mdx +0 -0
  911. /package/{zh → docs/zh}/components/router-legacy-tip.mdx +0 -0
  912. /package/{zh → docs/zh}/components/self-route-example.mdx +0 -0
  913. /package/{zh → docs/zh}/configure/app/auto-load-plugin.mdx +0 -0
  914. /package/{zh → docs/zh}/configure/app/bff/_category_.json +0 -0
  915. /package/{zh → docs/zh}/configure/app/bff/enable-handle-web.mdx +0 -0
  916. /package/{zh → docs/zh}/configure/app/bff/prefix.mdx +0 -0
  917. /package/{zh → docs/zh}/configure/app/bff/proxy.mdx +0 -0
  918. /package/{zh → docs/zh}/configure/app/builder-plugins.mdx +0 -0
  919. /package/{zh → docs/zh}/configure/app/deploy/_category_.json +0 -0
  920. /package/{zh → docs/zh}/configure/app/deploy/microFrontend.mdx +0 -0
  921. /package/{zh → docs/zh}/configure/app/dev/_category_.json +0 -0
  922. /package/{zh → docs/zh}/configure/app/dev/proxy.mdx +0 -0
  923. /package/{zh → docs/zh}/configure/app/experiments/_category_.json +0 -0
  924. /package/{zh → docs/zh}/configure/app/html/_category_.json +0 -0
  925. /package/{zh → docs/zh}/configure/app/output/_category_.json +0 -0
  926. /package/{zh → docs/zh}/configure/app/output/disable-node-polyfill.mdx +0 -0
  927. /package/{zh → docs/zh}/configure/app/output/ssg.mdx +0 -0
  928. /package/{zh → docs/zh}/configure/app/performance/_category_.json +0 -0
  929. /package/{zh → docs/zh}/configure/app/plugins.mdx +0 -0
  930. /package/{zh → docs/zh}/configure/app/runtime/_category_.json +0 -0
  931. /package/{zh → docs/zh}/configure/app/runtime/intro.mdx +0 -0
  932. /package/{zh → docs/zh}/configure/app/runtime/master-app.mdx +0 -0
  933. /package/{zh → docs/zh}/configure/app/runtime/router.mdx +0 -0
  934. /package/{zh → docs/zh}/configure/app/runtime/state.mdx +0 -0
  935. /package/{zh → docs/zh}/configure/app/security/_category_.json +0 -0
  936. /package/{zh → docs/zh}/configure/app/server/_category_.json +0 -0
  937. /package/{zh → docs/zh}/configure/app/server/base-url.mdx +0 -0
  938. /package/{zh → docs/zh}/configure/app/server/enable-framework-ext.mdx +0 -0
  939. /package/{zh → docs/zh}/configure/app/server/port.mdx +0 -0
  940. /package/{zh → docs/zh}/configure/app/server/public-routes.mdx +0 -0
  941. /package/{zh → docs/zh}/configure/app/server/routes.mdx +0 -0
  942. /package/{zh → docs/zh}/configure/app/server/ssr-by-entries.mdx +0 -0
  943. /package/{zh → docs/zh}/configure/app/server/ssr.mdx +0 -0
  944. /package/{zh → docs/zh}/configure/app/source/_category_.json +0 -0
  945. /package/{zh → docs/zh}/configure/app/source/config-dir.mdx +0 -0
  946. /package/{zh → docs/zh}/configure/app/source/design-system.mdx +0 -0
  947. /package/{zh → docs/zh}/configure/app/source/disable-default-entries.mdx +0 -0
  948. /package/{zh → docs/zh}/configure/app/source/disable-entry-dirs.mdx +0 -0
  949. /package/{zh → docs/zh}/configure/app/source/enable-async-entry.mdx +0 -0
  950. /package/{zh → docs/zh}/configure/app/source/entries-dir.mdx +0 -0
  951. /package/{zh → docs/zh}/configure/app/source/entries.mdx +0 -0
  952. /package/{zh → docs/zh}/configure/app/testing/_category_.json +0 -0
  953. /package/{zh → docs/zh}/configure/app/testing/transformer.mdx +0 -0
  954. /package/{zh → docs/zh}/configure/app/tools/_category_.json +0 -0
  955. /package/{zh → docs/zh}/configure/app/tools/esbuild.mdx +0 -0
  956. /package/{zh → docs/zh}/configure/app/tools/jest.mdx +0 -0
  957. /package/{zh → docs/zh}/configure/app/tools/swc.mdx +0 -0
  958. /package/{zh → docs/zh}/configure/app/tools/tailwindcss.mdx +0 -0
  959. /package/{zh → docs/zh}/configure/app/usage.mdx +0 -0
  960. /package/{zh → docs/zh}/guides/advanced-features/_category_.json +0 -0
  961. /package/{zh → docs/zh}/guides/advanced-features/bff/_category_.json +0 -0
  962. /package/{zh → docs/zh}/guides/advanced-features/bff/bff-proxy.mdx +0 -0
  963. /package/{zh → docs/zh}/guides/advanced-features/bff/frameworks.mdx +0 -0
  964. /package/{zh → docs/zh}/guides/advanced-features/bff/function.mdx +0 -0
  965. /package/{zh → docs/zh}/guides/advanced-features/bff/index.mdx +0 -0
  966. /package/{zh → docs/zh}/guides/advanced-features/bff/type.mdx +0 -0
  967. /package/{zh → docs/zh}/guides/advanced-features/code-split.mdx +0 -0
  968. /package/{zh → docs/zh}/guides/advanced-features/low-level.mdx +0 -0
  969. /package/{zh → docs/zh}/guides/advanced-features/ssg.mdx +0 -0
  970. /package/{zh → docs/zh}/guides/advanced-features/testing.mdx +0 -0
  971. /package/{zh → docs/zh}/guides/advanced-features/web-server.mdx +0 -0
  972. /package/{zh → docs/zh}/guides/basic-features/_category_.json +0 -0
  973. /package/{zh → docs/zh}/guides/basic-features/alias.mdx +0 -0
  974. /package/{zh → docs/zh}/guides/basic-features/css.mdx +0 -0
  975. /package/{zh → docs/zh}/guides/basic-features/data-fetch.mdx +0 -0
  976. /package/{zh → docs/zh}/guides/basic-features/env-vars.mdx +0 -0
  977. /package/{zh → docs/zh}/guides/basic-features/html.mdx +0 -0
  978. /package/{zh → docs/zh}/guides/basic-features/proxy.mdx +0 -0
  979. /package/{zh → docs/zh}/guides/basic-features/routes.mdx +0 -0
  980. /package/{zh → docs/zh}/guides/concept/_category_.json +0 -0
  981. /package/{zh → docs/zh}/guides/concept/builder.mdx +0 -0
  982. /package/{zh → docs/zh}/guides/concept/entries.mdx +0 -0
  983. /package/{zh → docs/zh}/guides/get-started/_category_.json +0 -0
  984. /package/{zh → docs/zh}/guides/get-started/upgrade.mdx +0 -0
  985. /package/{zh → docs/zh}/guides/topic-detail/_category_.json +0 -0
  986. /package/{zh → docs/zh}/guides/topic-detail/changesets/_category_.json +0 -0
  987. /package/{zh → docs/zh}/guides/topic-detail/changesets/add.mdx +0 -0
  988. /package/{zh → docs/zh}/guides/topic-detail/changesets/config.mdx +0 -0
  989. /package/{zh → docs/zh}/guides/topic-detail/changesets/github.mdx +0 -0
  990. /package/{zh → docs/zh}/guides/topic-detail/changesets/introduce.mdx +0 -0
  991. /package/{zh → docs/zh}/guides/topic-detail/changesets/release-pre.mdx +0 -0
  992. /package/{zh → docs/zh}/guides/topic-detail/changesets/release.mdx +0 -0
  993. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/_category_.json +0 -0
  994. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/extend.mdx +0 -0
  995. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/hook-list.mdx +0 -0
  996. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/hook.mdx +0 -0
  997. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/implement.mdx +0 -0
  998. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/introduction.mdx +0 -0
  999. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/lifecycle.mdx +0 -0
  1000. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/relationship.mdx +0 -0
  1001. /package/{zh → docs/zh}/guides/topic-detail/generator/_category_.json +0 -0
  1002. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/_category_.json +0 -0
  1003. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/_category_.json +0 -0
  1004. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/app.mdx +0 -0
  1005. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/ejs.mdx +0 -0
  1006. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/git.mdx +0 -0
  1007. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/handlebars.mdx +0 -0
  1008. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/json.mdx +0 -0
  1009. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/npm.mdx +0 -0
  1010. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/develop.mdx +0 -0
  1011. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/introduce.mdx +0 -0
  1012. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/run-in-js.mdx +0 -0
  1013. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/structure.mdx +0 -0
  1014. /package/{zh → docs/zh}/guides/topic-detail/generator/config/_category_.json +0 -0
  1015. /package/{zh → docs/zh}/guides/topic-detail/generator/config/app.mdx +0 -0
  1016. /package/{zh → docs/zh}/guides/topic-detail/generator/config/common.mdx +0 -0
  1017. /package/{zh → docs/zh}/guides/topic-detail/generator/config/module.mdx +0 -0
  1018. /package/{zh → docs/zh}/guides/topic-detail/generator/config/monorepo.mdx +0 -0
  1019. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/_category_.json +0 -0
  1020. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/abstract.mdx +0 -0
  1021. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/_category_.json +0 -0
  1022. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/_category_.json +0 -0
  1023. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addFile.mdx +0 -0
  1024. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addHelper.mdx +0 -0
  1025. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addManyFile.mdx +0 -0
  1026. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addPartial.mdx +0 -0
  1027. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/introduce.mdx +0 -0
  1028. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/rmDir.mdx +0 -0
  1029. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/rmFile.mdx +0 -0
  1030. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateJSONFile.mdx +0 -0
  1031. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateModernConfig.mdx +0 -0
  1032. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.mdx +0 -0
  1033. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/_category_.json +0 -0
  1034. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/gitAddAndCommit.mdx +0 -0
  1035. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/initGitRepo.mdx +0 -0
  1036. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/isInGitRepo.mdx +0 -0
  1037. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/_category_.json +0 -0
  1038. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/afterForged.mdx +0 -0
  1039. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/onForged.mdx +0 -0
  1040. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/_category_.json +0 -0
  1041. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/isFileExit.mdx +0 -0
  1042. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/locale.mdx +0 -0
  1043. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/readDir.mdx +0 -0
  1044. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/_category_.json +0 -0
  1045. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +0 -0
  1046. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +0 -0
  1047. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/setInput.mdx +0 -0
  1048. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/setInputValue.mdx +0 -0
  1049. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/type.mdx +0 -0
  1050. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/introduce.mdx +0 -0
  1051. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/_category_.json +0 -0
  1052. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/createElement.mdx +0 -0
  1053. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/createSubProject.mdx +0 -0
  1054. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/enableFunc.mdx +0 -0
  1055. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/introduce.mdx +0 -0
  1056. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/npm/_category_.json +0 -0
  1057. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/npm/install.mdx +0 -0
  1058. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/use.mdx +0 -0
  1059. /package/{zh → docs/zh}/guides/topic-detail/generator/project.mdx +0 -0
  1060. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/_category_.json +0 -0
  1061. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -0
  1062. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c02-development.mdx +0 -0
  1063. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -0
  1064. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -0
  1065. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -0
  1066. /package/{zh → docs/zh}/guides/topic-detail/model/_category_.json +0 -0
  1067. /package/{zh → docs/zh}/guides/topic-detail/model/auto-actions.mdx +0 -0
  1068. /package/{zh → docs/zh}/guides/topic-detail/model/computed-state.mdx +0 -0
  1069. /package/{zh → docs/zh}/guides/topic-detail/model/define-model.mdx +0 -0
  1070. /package/{zh → docs/zh}/guides/topic-detail/model/faq.mdx +0 -0
  1071. /package/{zh → docs/zh}/guides/topic-detail/model/manage-effects.mdx +0 -0
  1072. /package/{zh → docs/zh}/guides/topic-detail/model/model-communicate.mdx +0 -0
  1073. /package/{zh → docs/zh}/guides/topic-detail/model/performance.mdx +0 -0
  1074. /package/{zh → docs/zh}/guides/topic-detail/model/quick-start.mdx +0 -0
  1075. /package/{zh → docs/zh}/guides/topic-detail/model/redux-integration.mdx +0 -0
  1076. /package/{zh → docs/zh}/guides/topic-detail/model/test-model.mdx +0 -0
  1077. /package/{zh → docs/zh}/guides/topic-detail/model/typescript-best-practice.mdx +0 -0
  1078. /package/{zh → docs/zh}/guides/topic-detail/model/use-model.mdx +0 -0
  1079. /package/{zh → docs/zh}/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -0
  1080. /package/{zh → docs/zh}/guides/topic-detail/monorepo/_category_.json +0 -0
  1081. /package/{zh → docs/zh}/guides/topic-detail/monorepo/intro.mdx +0 -0
  1082. /package/{zh → docs/zh}/guides/topic-detail/monorepo/publish.mdx +0 -0
  1083. /package/{zh → docs/zh}/guides/troubleshooting/_category_.json +0 -0
  1084. /package/{zh → docs/zh}/guides/troubleshooting/cli.mdx +0 -0
  1085. /package/{zh → docs/zh}/guides/troubleshooting/dependencies.mdx +0 -0
  1086. /package/{zh → docs/zh}/tutorials/first-app/_category_.json +0 -0
  1087. /package/{zh → docs/zh}/tutorials/first-app/c01-start.mdx +0 -0
  1088. /package/{zh → docs/zh}/tutorials/first-app/c02-component.mdx +0 -0
  1089. /package/{zh → docs/zh}/tutorials/first-app/c03-css.mdx +0 -0
  1090. /package/{zh → docs/zh}/tutorials/first-app/c04-routes.mdx +0 -0
  1091. /package/{zh → docs/zh}/tutorials/first-app/c05-loader.mdx +0 -0
  1092. /package/{zh → docs/zh}/tutorials/first-app/c06-model.mdx +0 -0
  1093. /package/{zh → docs/zh}/tutorials/first-app/c07-container.mdx +0 -0
  1094. /package/{zh → docs/zh}/tutorials/first-app/c08-entries.mdx +0 -0
  1095. /package/{zh → docs/zh}/tutorials/foundations/_category_.json +0 -0
  1096. /package/{zh → docs/zh}/tutorials/foundations/introduction.mdx +0 -0
@@ -0,0 +1,507 @@
1
+ ---
2
+ title: 服务端渲染(SSR)
3
+ sidebar_position: 3
4
+ ---
5
+ # 服务端渲染(SSR)
6
+
7
+ 在 Modern.js 中,SSR 也是开箱即用的。开发者无需为 SSR 编写复杂的服务端逻辑,也无需关心 SSR 的运维,或是创建单独的服务。Modern.js 拥有完备的 SSR 降级策略,保证页面能够安全运行。
8
+
9
+ 启用 SSR 非常简单,只需要设置 [`server.ssr`](/configure/app/server/ssr) 为 `true` 即可:
10
+
11
+ ```ts title="modern.config.ts"
12
+ import { defineConfig } from '@modern-js/app-tools';
13
+
14
+ export default defineConfig({
15
+ "server": {
16
+ "ssr": true,
17
+ },
18
+ })
19
+ ```
20
+
21
+ ## SSR 时的数据获取
22
+
23
+ Modern.js 中提供了 Data Loader,方便开发者在 SSR、CSR 下同构的获取数据。每个路由模块,如 `layout.tsx` 和 `page.tsx` 都可以定义自己的 Data Loader:
24
+
25
+ ```ts title="src/routes/page.loader.ts"
26
+ export default () => {
27
+ return {
28
+ message: 'Hello World',
29
+ };
30
+ };
31
+ ```
32
+
33
+ 在组件中可以通过 Hooks API 的方式获取 `loader` 函数返回的数据:
34
+
35
+ ```tsx
36
+ import { useLoaderData } from '@modern-js/runtime/router'
37
+ export default () => {
38
+ const data = useLoaderData();
39
+ return <div>{data.message}</div>;
40
+ };
41
+ ```
42
+
43
+ Modern.js 打破传统的 SSR 开发模式,提供了用户无感的 SSR 开发体验。并且提供了优雅的降级处理,一旦 SSR 请求失败,会自动降级在浏览器端重新发起请求。
44
+
45
+ 不过,开发者仍然需要关注数据的兜底处理,例如 `null` 值或不符合预期的数据返回。避免在 SSR 时产生 React 渲染错误或是返回凌乱的渲染结果。
46
+
47
+ :::info 补充信息
48
+ 1. 当以客户端路由的方式请求页面时,Modern.js 会发送一个 HTTP 请求,服务端接收到请求后执行页面对应的 Data Loader 函数,然后将执行结果作为请求的响应返回浏览器。
49
+
50
+ 2. 使用 Data Loader 时,数据获取发生在渲染前,Modern.js 也仍然支持在组件渲染时获取数据。更多相关内容可以查看[数据获取](/guides/basic-features/data-fetch)。
51
+ :::
52
+
53
+
54
+
55
+ ## 保持渲染一致
56
+
57
+ 有些业务中,通常需要根据当前的运行容器环境特征做不同的 UI 展示,例如 [UA](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent) 信息。如果处理不够仔细,此时很有可能出现不符合预期的渲染结果。
58
+
59
+ 这里通过一个例子,演示当 SSR 与 CSR 渲染不一致时出现的问题,在组件中添加以下代码:
60
+
61
+ ```tsx
62
+ {
63
+ typeof window !== 'undefined' ? <div>browser content</div> : null;
64
+ }
65
+ ```
66
+
67
+ 启动应用后,访问页面,会发现浏览器控制台抛出警告信息:
68
+
69
+ ```sh
70
+ Warning: Expected server HTML to contain a matching <div> in <div>.
71
+ ```
72
+
73
+ 这是 React 在客户端执行 hydrate 逻辑时,发现渲染结果与 SSR 渲染结果不一致造成的。虽然页面表现正常,但在复杂应用中,很有可能因此出现 DOM 层级混乱、样式混乱等问题。
74
+
75
+ :::info
76
+ 关于 hydrate (注水)逻辑请参考[这里](https://reactjs.org/docs/react-dom.html#hydrate)。
77
+
78
+ :::
79
+
80
+ 应用需要保持 SSR 与 CSR 渲染结果的一致性,如果存在不一致的情况,说明这部分内容无需在 SSR 中进行渲染。Modern.js 为这类在 SSR 中不需要渲染的内容提供 [`<NoSSR>` 工具组件](/apis/app/runtime/core/use-runtime-context):
81
+
82
+ ```ts
83
+ import { NoSSR } from '@modern-js/runtime/ssr';
84
+ ```
85
+
86
+ 在不需要进行 SSR 的元素外部,用 `NoSSR` 组件包裹:
87
+
88
+ ```tsx
89
+ <NoSSR>
90
+ <div>client content</div>
91
+ </NoSSR>
92
+ ```
93
+
94
+ 修改代码后,刷新页发现之前的 Waring 消失。打开浏览器开发者工具的 Network 窗口,查看返回的 HTML 文档是不包含 `NoSSR` 组件包裹的内容的。
95
+
96
+ :::info 补充信息
97
+ [`useRuntimeContext`](/apis/app/runtime/core/use-runtime-context) 可以获取完整的请求信息,可以利用它保证 SSR 与 CSR 的渲染结果一致。
98
+
99
+ :::
100
+
101
+ ## 关注内存泄漏
102
+
103
+ :::warning 警告
104
+ 在 SSR 场景下,开发者需要特别关注内存泄露问题,即使是微小的内存泄露,在大量的访问后也会对服务造成影响。
105
+
106
+ :::
107
+
108
+ SSR 时,浏览器的每次请求,都会触发服务端重新执行一次组件渲染逻辑。所以,需要避免在全局定义任何可能不断增长的数据结构,或在全局进行事件订阅,或创建不会被销毁的流。
109
+
110
+ 例如以下代码,使用 [redux-observable](https://redux-observable.js.org/) 时,习惯了 CSR 的开发者通常会在组件中这样编码:
111
+
112
+ ```tsx
113
+ /* 代码仅作为示例,不可运行 */
114
+ import { createEpicMiddleware, combineEpics } from 'redux-observable';
115
+
116
+ const epicMiddleware = createEpicMiddleware();
117
+ const rootEpic = combineEpics();
118
+
119
+ export default function Test() {
120
+ epicMiddleware.run(rootEpic);
121
+ return <div>Hello Modern.js</div>;
122
+ }
123
+ ```
124
+
125
+ 在组件外层创建 Middleware 实例 `epicMiddleware`,并在组件内部调用 `epicMiddleware.run`。
126
+
127
+ 在浏览器端,这段代码不会造成任何问题,但是在 SSR 时,Middleware 实例会一直无法被销毁。每次渲染组件,调用 `epicMiddleware.run(rootEpic)` 时,都会在内部添加新的事件绑定,导致整个对象不断变大,最终对应用性能造成影响。
128
+
129
+ CSR 中这类问题不易被发觉,因此从 CSR 切换到 SSR 时,如果不确定应用是否存在这类隐患,可以对应用进行压测。
130
+
131
+ ## 收敛服务端数据
132
+
133
+ 为了保持 SSR 阶段请求的数据,可以在浏览器端直接使用,Modern.js 会将渲染过程中收集的数据与状态注入到 HTML 内。但是,CSR 应用常常存在接口数据量大、组件状态未收敛的情况,这时如果直接使用 SSR,渲染得到的 HTML 体积可能会存在过大的问题。此时,SSR 不仅无法为应用带来用户体验上的提升,反而可能起到相反的作用。
134
+
135
+ 因此,使用 SSR 时,**开发者需要为应用做合理的瘦身**:
136
+
137
+ 1. 关注首屏,SSR 中可以只请求首屏需要的数据,并在浏览器端渲染剩余的部分。
138
+ 2. 将与渲染无关的数据,从接口返回数据中剔除。
139
+
140
+ ## Serverless Pre-render
141
+
142
+ Modern.js 提供 Serverless Pre-rendering (SPR) 这一特性来提升 SSR 性能。
143
+
144
+ SPR 利用预渲染与缓存技术,为 SSR 页面提供静态 Web 的响应性能。它让 SSR 应用拥有静态 Web 页面的响应速度与稳定性,同时还能保持数据的动态更新。
145
+
146
+ 在 Modern.js 中使用 SPR 非常简单,只需要在组件中新增 `PreRender` 组件,该组件所在的页面就会自动开启 SPR。
147
+
148
+ 这里模拟一个使用 `useLoaderData` API 的组件,Data Loader 中的请求需要消耗 2s 时间。
149
+
150
+ ```jsx
151
+ import { useLoaderData } from '@modern-js/runtime/router';
152
+
153
+ export const loader = async () => {
154
+ await new Promise((resolve, reject) => {
155
+ setTimeout(() => {
156
+ resolve(null);
157
+ }, 2000);
158
+ });
159
+
160
+ return {
161
+ message: 'Hello Modern.js',
162
+ };
163
+ };
164
+
165
+ export default () => {
166
+ const data = useLoaderData();
167
+ return <div>{data?.message}</div>;
168
+ };
169
+ ```
170
+
171
+ 执行 `dev` 命令后,打开页面,可以明显的察觉到页面需要等到 2s 后才返回。
172
+
173
+ 接下来使用 `PreRender` 组件来进行优化,该组件可以直接从 `@modern-js/runtime/ssr` 中导出:
174
+
175
+ ```ts
176
+ import { PreRender } from '@modern-js/runtime/ssr';
177
+ ```
178
+
179
+ 在路由组件内使用 `PreRender` 组件,并设置参数 `interval`,用于表示该次渲染结果的过期时间为 5s:
180
+
181
+ ```tsx
182
+ <PreRender interval={5} />
183
+ ```
184
+
185
+ 修改后,执行 `pnpm run build && pnpm run serve` 启动应用,并打开页面。
186
+
187
+ 首次打开时,和之前的渲染并没有什么不同,同样存在 2s 延迟。点击刷新,页面瞬间打开,但此时,页面数据并没有因为刷新发生变化,这是因为缓存还没有过期。
188
+
189
+ 等待 5s,重新刷新页面,页面的数据仍然没有变化。再一次刷新页面数据发生变化,但是页面仍然几乎是瞬间响应的。
190
+ 这是因为在之前的请求时,SPR 已经在后台异步获取了新的渲染结果,本次请求到的页面是已经缓存在服务器中的版本。
191
+
192
+ 可以想象,当 `interval` 设置为 1 时,用户可以在感知到实时数据的同时,拥有静态页面的响应体验。
193
+
194
+ :::info 补充信息
195
+ `PreRender` 的详细使用可以参考[这里](/apis/app/runtime/ssr/pre-render)。
196
+
197
+ :::
198
+
199
+ ## Treeshaking
200
+
201
+ 开启 SSR 时,Modern.js 会用相同的入口,构建出 SSR Bundle 和 CSR Bundle 两份产物。因此,在 SSR Bundle 中存在 Web API,或是在 CSR Bundle 中存在 Node API 时,都可能导致运行出错。
202
+
203
+ 在组件中引入 Web API,通常情况下是要做一些全局监听,或是获取浏览器相关的数据,例如:
204
+
205
+ ```tsx
206
+ document.addEventListener('load', () => {
207
+ console.log('document load');
208
+ });
209
+ const App = () => {
210
+ return <div>Hello World</div>;
211
+ };
212
+ export default App;
213
+ ```
214
+
215
+ 在组件文件中引入 Node API,通常情况下是因为使用了 Data Loader,例如:
216
+
217
+ ```ts
218
+ import fse from 'fs-extra';
219
+ export const loader = () => {
220
+ const file = fse.readFileSync('./myfile');
221
+ return {
222
+ ...
223
+ };
224
+ };
225
+ ```
226
+
227
+ ### 环境变量区分
228
+
229
+ 对于第一种情况,我们可以直接使用 Modern.js 内置的环境变量 `MODERN_TARGET` 进行判断,在构建时删除无用代码:
230
+
231
+ ```ts
232
+ if (process.env.MODERN_TARGET === 'browser') {
233
+ document.addEventListener('load', () => {
234
+ console.log('document load');
235
+ });
236
+ }
237
+ ```
238
+
239
+ :::note
240
+ 更多内容可以查看[环境变量](/guides/basic-features/env-vars)。
241
+
242
+ :::
243
+
244
+ ### 文件后缀区分
245
+
246
+ 但例如第二种情况,Treeshaking 的方式并不能保证代码被完全分离。Modern.js 也支持通过 `.node.` 后缀的文件来区分 SSR Bundle 和 CSR Bundle 产物的打包文件。
247
+
248
+ 例如在代码中引入了 `fs-extra`,这时候直接引用到组件中,会造成 CSR 加载报错。可以创建同名的 `.ts` 和 `.node.ts` 文件做一层代理:
249
+
250
+ ```ts title="compat.ts"
251
+ export const readFileSync: any = () => {};
252
+ ```
253
+
254
+ ```ts title="compat.node.ts"
255
+ export { readFileSync } from 'fs-extra';
256
+ ```
257
+
258
+ 在文件中直接引入 `./compat`,此时 SSR 环境下会优先使用 `.node.ts` 后缀的文件,CSR 环境下会使用 `.ts` 后缀的文件。
259
+
260
+ ```ts title="App.tsx"
261
+ import { readFileSync } from './compat'
262
+
263
+ export const loader = () => {
264
+ const file = readFileSync('./myfile');
265
+ return {
266
+ ...
267
+ };
268
+ };
269
+ ```
270
+
271
+ ### 独立文件
272
+
273
+ 上述两种方式,都会为开发者带来一些心智负担。Modern.js 基于[嵌套路由](/guides/basic-features/routes)开发设计了[更简单的方案](/guides/basic-features/data-fetch)来分离 CSR 和 SSR 的代码。
274
+
275
+ ## 接口请求
276
+
277
+ 在 SSR 中发起接口请求时,开发者有时自己封装了同构的请求工具。部分接口需要传递用户 Cookie,开发者可以通过 [`useRuntimeContext`](/guides/basic-features/data-fetch#route-loader) API 获取到请求头来实现。
278
+
279
+ 需要注意的是,此时获取到的是 HTML 请求的请求头,不一定适用于接口请求,因此**千万不能**透传所有请求头。并且,一些后端接口,或是通用网关,会根据请求头中的信息做校验,全量透传容易出现各种难以排查的问题,推荐**按需透传**。
280
+
281
+ 如果实在需要透传所有请求头,请务必过滤 `host` 字段。
282
+
283
+ ## 流式渲染
284
+
285
+ Modern.js 支持了 React 18 的流式渲染,可以通过如下配置启用:
286
+
287
+ ```ts title="modern.config.ts"
288
+ import { defineConfig } from '@modern-js/app-tools';
289
+
290
+ export default defineConfig({
291
+ "server": {
292
+ "ssr": {
293
+ "mode": "stream",
294
+ },
295
+ },
296
+ })
297
+ ```
298
+
299
+ Modern.js 的流式渲染基于 React Router 实现,主要涉及 API 有:
300
+
301
+ - [`defer`](https://reactrouter.com/en/main/utils/defer):在 Data Loader 中使用,用于支持异步获取数据。
302
+ - [`Await`](https://reactrouter.com/en/main/components/await):用于渲染 Data Loader 返回的异步数据。
303
+ - [`useAsyncValue`](https://reactrouter.com/en/main/hooks/use-async-value):用于从最近的父级 `Await` 组件中获取数据。
304
+
305
+
306
+ ### 异步获取数据
307
+
308
+ ```ts title='page.loader.ts'
309
+ import { defer, type LoaderFunctionArgs } from '@modern-js/runtime/router';
310
+
311
+ interface User {
312
+ name: string;
313
+ age: number;
314
+ }
315
+
316
+ export interface Data {
317
+ data: User;
318
+ }
319
+
320
+ export default ({ params }: LoaderFunctionArgs) => {
321
+ const userId = params.id;
322
+
323
+ const user = new Promise<User>(resolve => {
324
+ setTimeout(() => {
325
+ resolve({
326
+ name: `user-${userId}`,
327
+ age: 18,
328
+ });
329
+ }, 200);
330
+ });
331
+
332
+ return defer({ data: user });
333
+ };
334
+
335
+ ```
336
+
337
+ `user` 是一个 Promise 类型的对象,表示需要异步获取的数据,通过 `defer` 处理需要异步获取的 `user`。注意,`defer` 必须接收一个对象类型的参数,
338
+ 因此, 传入 `defer` 的参数为 `{data: user}`。
339
+
340
+ `defer` 还可以同时接收异步数据和同步数据。例如:
341
+
342
+ ```ts title='page.loader.ts'
343
+
344
+ // 省略部分代码
345
+
346
+ export default ({ params }: LoaderFunctionArgs) => {
347
+ const userId = params.id;
348
+
349
+ const user = new Promise<User>(resolve => {
350
+ setTimeout(() => {
351
+ resolve({
352
+ name: `user-${userId}`,
353
+ age: 18,
354
+ });
355
+ }, 200);
356
+ });
357
+
358
+ const otherData = new Promise<string>(resolve => {
359
+ setTimeout(() => {
360
+ resolve('some sync data');
361
+ }, 200);
362
+ });
363
+
364
+ return defer({
365
+ data: user,
366
+ other: await otherData
367
+ });
368
+ };
369
+
370
+ ```
371
+
372
+ `otherData` 前加了 `await`,所以是同步获取的数据,它可以和异步获取的数据 `user` 同时传入 `defer`。
373
+
374
+
375
+ ### 渲染异步数据
376
+
377
+ 通过 `Await` 组件,可以获取到 Data Loader 中异步返回的数据,然后进行渲染。例如:
378
+
379
+ ```tsx title='page.tsx'
380
+ import { Await, useLoaderData } from '@modern-js/runtime/router';
381
+ import { Suspense } from 'react';
382
+ import type { Data } from './page.loader';
383
+
384
+ const Page = () => {
385
+ const data = useLoaderData() as Data;
386
+
387
+ return (
388
+ <div>
389
+ User info:
390
+ <Suspense fallback={<div id="loading">loading user data ...</div>}>
391
+ <Await resolve={data.data}>
392
+ {(user) => {
393
+ return (
394
+ <div id="data">
395
+ name: {user.name}, age: {user.age}
396
+ </div>
397
+ );
398
+ }}
399
+ </Await>
400
+ </Suspense>
401
+ </div>
402
+ );
403
+ };
404
+
405
+ export default Page;
406
+ ```
407
+
408
+ `Await` 需要包裹在 `Suspense` 组件内部,`Await` 的 `resolve` 传入的是 Data Loader 异步获取的数据,当数据获取完成后,
409
+ 通过 [Render Props](https://reactjs.org/docs/render-props.html) 模式,渲染获取到的数据。在数据的获取阶段,将展示
410
+ `Suspense` 组件 `fallback` 属性设置的内容。
411
+
412
+ :::warning 注意
413
+ 从 Data Loader 文件导入类型时,需要使用 import type 语法,保证只导入类型信息,这样可以避免 Data Loader 的代码打包到前端产物的 bundle 文件中。
414
+
415
+ 所以,这里的导入方式为:`import type { Data } from './page.loader'`;
416
+ :::
417
+
418
+ 也可以通过 `useAsyncValue` 获取 Data Loader 返回的异步数据。例如:
419
+
420
+
421
+ ```tsx title='page.tsx'
422
+ import { useAsyncValue } from '@modern-js/runtime/router';
423
+
424
+ // 省略部分代码
425
+
426
+ const UserInfo = () => {
427
+ const user = useAsyncValue();
428
+
429
+ return (
430
+ <div>
431
+ name: {user.name}, age: {user.age}
432
+ </div>
433
+ )
434
+ }
435
+
436
+ const Page = () => {
437
+ const data = useLoaderData() as Data;
438
+
439
+ return (
440
+ <div>
441
+ User info:
442
+ <Suspense fallback={<div id="loading">loading user data ...</div>}>
443
+ <Await resolve={data.data}>
444
+ <UserInfo />
445
+ </Await>
446
+ </Suspense>
447
+ </div>
448
+ );
449
+ };
450
+
451
+ export default Page;
452
+ ```
453
+
454
+ ### 错误处理
455
+
456
+ `Await` 组件的 `errorElement` 属性,可以用来处理当 Data Loader 执行时,或者子组件渲染时抛出的错误。
457
+ 例如,我们故意在 Data Loader 函数中抛出错误:
458
+
459
+ ```ts title='page.loader.ts'
460
+ import { defer } from '@modern-js/runtime/router';
461
+
462
+ export default () => {
463
+ const data = new Promise((resolve, reject) => {
464
+ setTimeout(() => {
465
+ reject(new Error('error occurs'));
466
+ }, 200);
467
+ });
468
+
469
+ return defer({ data });
470
+ };
471
+ ```
472
+
473
+ 然后通过 `useAsyncError` 获取错误,并将用于渲染错误信息的组件赋值给 `Await` 组件的 `errorElement` 属性:
474
+
475
+ ```tsx title='page.ts'
476
+ import { Await, useAsyncError, useLoaderData } from '@modern-js/runtime/router';
477
+ import { Suspense } from 'react';
478
+
479
+ export default function Page() {
480
+ const data = useLoaderData();
481
+
482
+ return (
483
+ <div>
484
+ Error page
485
+ <Suspense fallback={<div>loading ...</div>}>
486
+ <Await resolve={data.data} errorElement={<ErrorElement />}>
487
+ {(data: any) => {
488
+ return <div>never displayed</div>;
489
+ }}
490
+ </Await>
491
+ </Suspense>
492
+ </div>
493
+ );
494
+ }
495
+
496
+ function ErrorElement() {
497
+ const error = useAsyncError() as Error;
498
+ return <p>Something went wrong! {error.message}</p>;
499
+ }
500
+ ```
501
+
502
+ :::info 补充信息
503
+
504
+ 1. [Deferred Data](https://reactrouter.com/en/main/guides/deferred)
505
+ 2. [New Suspense SSR Architecture in React 18](https://github.com/reactwg/react-18/discussions/37)
506
+
507
+ :::
@@ -0,0 +1,99 @@
1
+ ---
2
+ title: 数据模拟
3
+ sidebar_position: 6
4
+ ---
5
+ # 数据模拟
6
+
7
+ Modern.js 提供了快速生成 Mock 数据的功能,能够让前端独立自主开发,不被后端接口阻塞。
8
+
9
+ ## Mock 文件
10
+
11
+ 约定当 `config/mock` 目录下存在 `index.[jt]s` 时,会自动开启 Mock 功能,如下:
12
+
13
+ ```bash
14
+ .
15
+ ├── config
16
+ │ └── mock
17
+ │ └── index.ts
18
+ ├── src
19
+ │ └── App.tsx
20
+ └── modern.config.ts
21
+ ```
22
+
23
+ ## 编写 Mock 文件
24
+
25
+ `config/mock/index.ts` 文件只需要导出一个包含所有 Mock API 的对象,对象的属性由请求配置 `method` 和 `url` 组成,对应的属性值可以为 `Object`、`Array`、`Function`:
26
+
27
+ ```js
28
+ export default {
29
+ /* 属性为具体的 method 和 请求 url,值为 object 或 array 作为请求的结果 */
30
+ 'GET /api/getInfo': { data: [1, 2, 3, 4] },
31
+
32
+ /* method 默认为 GET */
33
+ '/api/getExample': { id: 1 },
34
+
35
+ /* 可以使用自定义函数根据请求动态返回数据,返回值参考 express middleware */
36
+ 'POST /api/addInfo': (req, res, next) => {
37
+ res.setHeader('Access-Control-Allow-Origin', '*');
38
+ res.end('200');
39
+ },
40
+ };
41
+ ```
42
+
43
+ 代码中访问 `http://localhost:8080/api/getInfo` 时,接口会返回 JSON 格式数据:`{ "data": [1, 2, 3, 4] }`。
44
+
45
+ ## 返回随机数据
46
+
47
+ 可以在 `config/mock/index.js` 中自主引入 [Mock.js](https://github.com/nuysoft/Mock/wiki/Getting-Started) 等库生成随机数据,例如:
48
+
49
+ ```js
50
+ const Mock = require('mockjs');
51
+
52
+ module.exports = {
53
+ '/api/getInfo': Mock.mock({
54
+ 'data|1-10': [{ name: '@cname' }],
55
+ }) /* => {data: [{name: "董霞"}, {name: "魏敏"}, {name: "石磊"}} */,
56
+ };
57
+ ```
58
+
59
+ :::info 更多随机数据生成库
60
+
61
+ - [Chancejs](https://github.com/chancejs/chancejs)
62
+ - [Mock](https://github.com/nuysoft/Mock/wiki/Getting-Started)
63
+
64
+ :::
65
+
66
+ ## 延迟返回
67
+
68
+ - 可以使用浏览器「 弱网模拟 」的功能实现。
69
+ - 可以通过 `setTimeout` 为单个接口设置延迟,例如:
70
+
71
+ ```js
72
+ module.exports = {
73
+ 'api/getInfo': (req, res) => {
74
+ setTimeout(() => {
75
+ res.end('delay 2000ms');
76
+ }, 2000);
77
+ },
78
+ };
79
+ ```
80
+
81
+ ## 按需使用 Mock 服务
82
+
83
+ `config/mock/index.ts` 下还可以到处 `config` 对象,更精细的控制 Mock 服务。
84
+
85
+ ```ts
86
+ type MockConfig = {
87
+ enable: ((req: IncomingMessage, res: ServerResponse) => boolean) | boolean;
88
+ };
89
+
90
+ export const config = {
91
+ enable: false
92
+ }
93
+ ```
94
+
95
+ 目前仅支持 `enable` 配置,开发者可以通过该配置控制是否执行 Mock。
96
+
97
+ :::note
98
+ 修改 `config` 后无需重启服务,即刻生效。
99
+ :::
@@ -0,0 +1,47 @@
1
+ ---
2
+ title: 介绍
3
+ sidebar_position: 1
4
+ ---
5
+
6
+ # Modern.js 介绍
7
+
8
+ **Modern.js 是字节跳动 Web 工程体系的开源版本**,它提供多个解决方案,来帮助开发者解决不同研发场景下的问题。
9
+
10
+ 目前 Modern.js 包含三个解决方案,分别面向 Web 应用开发场景、npm 包开发场景和文档站开发场景:
11
+
12
+ ![](https://lf3-static.bytednsdoc.com/obj/eden-cn/zq-uylkvT/ljhwZthlaukjlkulzlp/Solutions-1311.png)
13
+
14
+ 作为 Modern.js 工程体系的一部分,以上每个解决方案都可以被单独使用,并且各自部署了独立的文档站点。开发者可以按需选择其中的一个或多个解决方案来使用。
15
+
16
+ ## 关于文档
17
+
18
+ **当前文档站对应的是 Modern.js 框架**,适用于开发 Web 应用。
19
+
20
+ - 如果你需要开发一个 npm 包,请移步至 [Modern.js Module](https://modernjs.dev/module-tools) 文档。
21
+ - 如果你需要开发一个文档站点,请移步至 [Modern.js Doc](https://modernjs.dev/doc-tools/zh) 文档。
22
+ - 如果你需要基于 Modern.js 的构建引擎来实现一个 Web 开发框架,请移步至 [Modern.js Builder](https://modernjs.dev/builder) 文档。
23
+
24
+ :::tip
25
+ 由于 Modern.js 框架的使用最为广泛,在本文档站中,我们会省略「框架」,直接称其为 Modern.js。
26
+ :::
27
+
28
+ ## Modern.js 框架
29
+
30
+ **Modern.js 框架是一个基于 React 的渐进式 Web 开发框架**。在字节跳动内部,我们将 Modern.js 封装为上层框架,并支撑了数千个 Web 应用的研发。
31
+
32
+ Modern.js 能为开发者提供极致的**开发体验(Development Experience)**,让应用拥有更好的**用户体验(User Experience)**。
33
+
34
+ 在开发 React 应用过程中,开发者通常需要去为某些功能去设计实现方案,或是使用其他的库、框架来解决这些问题。Modern.js 支持 React 应用所需要的所有配置和工具,并内置**额外的功能和优化**。开发者可以使用 React 构建应用的 UI,然后逐步采用 Modern.js 的功能来解决常见的应用需求,如路由、数据获取、状态管理等。
35
+
36
+ 它主要包含以下特性:
37
+
38
+ - 🚀 **Rust 构建**:提供双构建工具支持,轻松切换到 Rspack 构建工具,编译飞快。
39
+ - 🪜 **渐进式**:使用最精简的模板创建项目,通过生成器逐步开启插件功能,定制解决方案。
40
+ - 🏠 **一体化**:开发与生产环境 Web Server 唯一,CSR 和 SSR 同构开发,函数即接口的 API 服务调用。
41
+ - 📦 **开箱即用**:默认 TS 支持,内置构建、ESLint、调试工具,全功能可测试。
42
+ - 🌏 **周边生态**:自研状态管理、微前端、模块打包、Monorepo 方案等周边需求。
43
+ - 🕸 **多种路由模式**:包含自控路由、基于文件约定的路由(嵌套路由)等。
44
+
45
+ ## 下一步
46
+
47
+ 如果你希望了解如何使用 Modern.js 框架,可以尝试 [创建第一个应用](/tutorials/first-app/c01-start),或是阅读 [快速上手](/guides/get-started/quick-start)。