@modern-js/main-doc 2.69.5 → 3.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/en/{_meta.json → _nav.json} +5 -1
- package/docs/en/apis/app/commands.mdx +2 -3
- package/docs/en/apis/app/hooks/src/entry.mdx +1 -5
- package/docs/en/apis/app/hooks/src/entry.server.mdx +4 -5
- package/docs/en/apis/app/hooks/src/routes.mdx +2 -2
- package/docs/en/apis/app/runtime/_meta.json +0 -18
- package/docs/en/apis/app/runtime/bff/use-hono-context.mdx +2 -2
- package/docs/en/apis/app/runtime/router/router.mdx +1 -1
- package/docs/en/apis/app/runtime/utility/css-in-js.mdx +3 -2
- package/docs/en/community/blog/v2-release-note.mdx +0 -2
- package/docs/en/community/contributing-guide.mdx +10 -12
- package/docs/en/components/bff-upload.mdx +16 -12
- package/docs/en/components/build-output.mdx +45 -0
- package/docs/en/components/debug-app.mdx +1 -1
- package/docs/en/components/enable-bff-caution.mdx +2 -2
- package/docs/en/components/enable-bff.mdx +38 -8
- package/docs/en/components/enable-ssg.mdx +48 -0
- package/docs/en/components/entry-scan-logic.mdx +7 -0
- package/docs/en/components/init-app.mdx +40 -17
- package/docs/en/components/international/install-command.mdx +9 -0
- package/docs/en/components/international/introduce.mdx +2 -0
- package/docs/en/components/module-federation.mdx +4 -4
- package/docs/en/components/new-entry-tooltip.mdx +0 -0
- package/docs/en/components/nodeVersion.mdx +2 -6
- package/docs/en/components/prerequisites.mdx +1 -1
- package/docs/en/components/ua-polyfill.mdx +16 -12
- package/docs/en/components/upgrade-browserslist.mdx +0 -0
- package/docs/en/configure/_meta.json +7 -8
- package/docs/en/configure/app/bff/cross-project.mdx +24 -0
- package/docs/en/configure/app/dev/lazy-compilation.mdx +45 -0
- package/docs/en/configure/app/dev/server.mdx +103 -0
- package/docs/en/configure/app/dev/setup-middlewares.mdx +4 -22
- package/docs/en/configure/app/html/app-icon.mdx +1 -23
- package/docs/en/configure/app/output/inline-scripts.mdx +1 -1
- package/docs/en/configure/app/output/override-browserslist.mdx +6 -4
- package/docs/en/configure/app/output/source-map.mdx +6 -3
- package/docs/en/configure/app/output/ssg.mdx +12 -43
- package/docs/en/configure/app/output/ssgByEntries.mdx +93 -0
- package/docs/en/configure/app/performance/build-cache.mdx +0 -4
- package/docs/en/configure/app/resolve/alias-strategy.mdx +14 -0
- package/docs/en/configure/app/resolve/alias.mdx +13 -0
- package/docs/en/configure/app/resolve/condition-names.mdx +18 -0
- package/docs/en/configure/app/resolve/dedupe.mdx +13 -0
- package/docs/en/configure/app/resolve/extensions.mdx +18 -0
- package/docs/en/configure/app/runtime/0-intro.mdx +2 -51
- package/docs/en/configure/app/security/check-syntax.mdx +1 -1
- package/docs/en/configure/app/server/port.mdx +1 -21
- package/docs/en/configure/app/server/rsc.mdx +30 -0
- package/docs/en/configure/app/server/ssr.mdx +20 -9
- package/docs/en/configure/app/source/decorators.mdx +4 -2
- package/docs/en/configure/app/source/entries.mdx +0 -2
- package/docs/en/configure/app/source/main-entry-name.mdx +4 -4
- package/docs/en/configure/app/source/transform-import.mdx +1 -59
- package/docs/en/configure/app/tools/bundler-chain.mdx +5 -5
- package/docs/en/configure/app/tools/css-extract.mdx +1 -1
- package/docs/en/configure/app/tools/dev-server.mdx +14 -248
- package/docs/en/configure/app/tools/html-plugin.mdx +3 -3
- package/docs/en/configure/app/tools/lightningcss-loader.mdx +0 -1
- package/docs/en/configure/app/tools/swc.mdx +1 -43
- package/docs/en/configure/app/usage.mdx +7 -17
- package/docs/en/guides/_meta.json +1 -2
- package/docs/en/guides/advanced-features/_meta.json +6 -0
- package/docs/en/guides/advanced-features/bff/cross-project.mdx +1 -7
- package/docs/en/guides/advanced-features/bff/extend-server.mdx +18 -3
- package/docs/en/guides/advanced-features/bff/frameworks.mdx +1 -1
- package/docs/en/guides/advanced-features/bff/function.mdx +2 -6
- package/docs/en/guides/advanced-features/bff/sdk.mdx +3 -3
- package/docs/en/guides/advanced-features/build-performance.mdx +23 -26
- package/docs/en/guides/advanced-features/compatibility.mdx +53 -9
- package/docs/en/guides/advanced-features/international/_meta.json +11 -0
- package/docs/en/guides/advanced-features/international/advanced.mdx +193 -0
- package/docs/en/guides/advanced-features/international/api.mdx +400 -0
- package/docs/en/guides/advanced-features/international/basic.mdx +417 -0
- package/docs/en/guides/advanced-features/international/best-practices.mdx +135 -0
- package/docs/en/guides/advanced-features/international/configuration.mdx +437 -0
- package/docs/en/guides/advanced-features/international/locale-detection.mdx +276 -0
- package/docs/en/guides/advanced-features/international/quick-start.mdx +154 -0
- package/docs/en/guides/advanced-features/international/resource-loading.mdx +417 -0
- package/docs/en/guides/advanced-features/international/routing.mdx +212 -0
- package/docs/en/guides/advanced-features/international.mdx +37 -0
- package/docs/en/guides/advanced-features/low-level.mdx +21 -16
- package/docs/en/guides/advanced-features/page-performance/code-split.mdx +4 -4
- package/docs/en/guides/advanced-features/page-performance/inline-assets.mdx +4 -4
- package/docs/en/guides/advanced-features/page-performance/optimize-bundle.mdx +7 -21
- package/docs/en/guides/advanced-features/page-performance/react-compiler.mdx +1 -8
- package/docs/en/guides/advanced-features/rspack-start.mdx +2 -22
- package/docs/en/guides/advanced-features/server-monitor/logger.mdx +0 -4
- package/docs/en/guides/advanced-features/server-monitor/monitors.mdx +62 -34
- package/docs/en/guides/advanced-features/web-server.mdx +82 -299
- package/docs/en/guides/basic-features/_meta.json +6 -1
- package/docs/en/guides/basic-features/css/css-in-js.mdx +46 -11
- package/docs/en/guides/basic-features/css/css-modules.mdx +5 -17
- package/docs/en/guides/basic-features/css/css.mdx +3 -3
- package/docs/en/guides/basic-features/css/tailwindcss.mdx +5 -89
- package/docs/en/guides/basic-features/data/data-cache.mdx +5 -1
- package/docs/en/guides/basic-features/data/data-fetch.mdx +4 -4
- package/docs/en/guides/basic-features/data/data-write.mdx +2 -2
- package/docs/en/guides/basic-features/debug/mock.mdx +4 -1
- package/docs/en/guides/basic-features/debug/proxy.mdx +0 -8
- package/docs/en/guides/basic-features/debug/rsdoctor.mdx +5 -5
- package/docs/en/guides/basic-features/deploy.mdx +25 -18
- package/docs/en/guides/basic-features/env-vars.mdx +1 -1
- package/docs/en/guides/basic-features/html.mdx +1 -1
- package/docs/en/guides/basic-features/output-files.mdx +3 -3
- package/docs/en/guides/basic-features/render/_meta.json +1 -1
- package/docs/en/guides/basic-features/render/before-render.mdx +16 -23
- package/docs/en/guides/basic-features/render/overview.mdx +51 -0
- package/docs/en/guides/basic-features/render/rsc.mdx +394 -0
- package/docs/en/guides/basic-features/render/ssg.mdx +26 -62
- package/docs/en/guides/basic-features/render/ssr-cache.mdx +6 -6
- package/docs/en/guides/basic-features/render/ssr.mdx +31 -31
- package/docs/en/guides/basic-features/render/streaming-ssr.mdx +29 -9
- package/docs/en/guides/basic-features/routes/_meta.json +1 -0
- package/docs/en/guides/basic-features/routes/config-routes.mdx +427 -0
- package/docs/en/guides/basic-features/{routes.mdx → routes/routes.mdx} +7 -110
- package/docs/en/guides/basic-features/static-assets/json-files.mdx +21 -3
- package/docs/en/guides/basic-features/static-assets.mdx +2 -2
- package/docs/en/guides/concept/builder.mdx +24 -9
- package/docs/en/guides/concept/entries.mdx +139 -147
- package/docs/en/guides/get-started/glossary.mdx +0 -18
- package/docs/en/guides/get-started/introduction.mdx +1 -4
- package/docs/en/guides/get-started/quick-start.mdx +8 -73
- package/docs/en/guides/get-started/tech-stack.mdx +7 -25
- package/docs/en/guides/get-started/upgrade.mdx +30 -23
- package/docs/en/guides/topic-detail/_meta.json +0 -12
- package/docs/en/guides/topic-detail/module-federation/_meta.json +1 -1
- package/docs/en/guides/topic-detail/module-federation/application.mdx +16 -15
- package/docs/en/guides/topic-detail/module-federation/i18n.mdx +670 -0
- package/docs/en/guides/topic-detail/module-federation/introduce.mdx +5 -4
- package/docs/en/guides/topic-detail/module-federation/ssr.mdx +50 -2
- package/docs/en/guides/topic-detail/module-federation/usage.mdx +10 -30
- package/docs/en/guides/troubleshooting/builder.mdx +3 -82
- package/docs/en/guides/troubleshooting/cli.mdx +6 -30
- package/docs/en/guides/troubleshooting/dependencies.mdx +22 -22
- package/docs/en/plugin/cli-plugins/api.mdx +4 -5
- package/docs/en/plugin/cli-plugins/migration.mdx +33 -48
- package/docs/en/plugin/introduction.mdx +39 -27
- package/docs/en/plugin/official/_meta.json +0 -5
- package/docs/en/plugin/official/cli-plugins/_meta.json +1 -1
- package/docs/en/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
- package/docs/en/plugin/official/cli-plugins.mdx +0 -2
- package/docs/en/plugin/plugin-system.mdx +68 -61
- package/docs/en/plugin/runtime-plugins/api.mdx +62 -59
- package/docs/en/plugin/runtime-plugins/migration.mdx +29 -20
- package/docs/en/tutorials/_meta.json +0 -10
- package/docs/en/tutorials/examples/csr-auth.mdx +1 -1
- package/docs/en/tutorials/foundations/introduction.mdx +9 -25
- package/docs/zh/{_meta.json → _nav.json} +10 -6
- package/docs/zh/apis/app/commands.mdx +2 -3
- package/docs/zh/apis/app/hooks/src/entry.mdx +1 -5
- package/docs/zh/apis/app/hooks/src/entry.server.mdx +4 -5
- package/docs/zh/apis/app/hooks/src/routes.mdx +2 -2
- package/docs/zh/apis/app/runtime/_meta.json +0 -18
- package/docs/zh/apis/app/runtime/bff/use-hono-context.mdx +2 -2
- package/docs/zh/apis/app/runtime/utility/css-in-js.mdx +3 -2
- package/docs/zh/community/blog/v2-release-note.mdx +0 -2
- package/docs/zh/community/contributing-guide.mdx +10 -12
- package/docs/zh/components/auto-upgrade.mdx +0 -0
- package/docs/zh/components/bff-upload.mdx +8 -5
- package/docs/zh/components/build-output.mdx +45 -0
- package/docs/zh/components/debug-app.mdx +1 -1
- package/docs/zh/components/enable-bff-caution.mdx +1 -1
- package/docs/zh/components/enable-bff.mdx +37 -8
- package/docs/zh/components/enable-ssg.mdx +47 -0
- package/docs/zh/components/entry-scan-logic.mdx +7 -0
- package/docs/zh/components/init-app.mdx +40 -18
- package/docs/zh/components/international/install-command.mdx +8 -0
- package/docs/zh/components/international/introduce.mdx +2 -0
- package/docs/zh/components/international/platform-support.mdx +0 -0
- package/docs/zh/components/module-federation.mdx +4 -4
- package/docs/zh/components/new-entry-tooltip.mdx +0 -0
- package/docs/zh/components/nodeVersion.mdx +3 -7
- package/docs/zh/components/prerequisites.mdx +1 -1
- package/docs/zh/components/self-route-example.mdx +3 -3
- package/docs/zh/components/ua-polyfill.mdx +11 -6
- package/docs/zh/components/upgrade-browserslist.mdx +0 -0
- package/docs/zh/configure/_meta.json +7 -8
- package/docs/zh/configure/app/bff/cross-project.mdx +24 -0
- package/docs/zh/configure/app/dev/lazy-compilation.mdx +44 -0
- package/docs/zh/configure/app/dev/server.mdx +104 -0
- package/docs/zh/configure/app/dev/setup-middlewares.mdx +4 -23
- package/docs/zh/configure/app/html/app-icon.mdx +1 -23
- package/docs/zh/configure/app/output/inline-scripts.mdx +1 -1
- package/docs/zh/configure/app/output/override-browserslist.mdx +3 -3
- package/docs/zh/configure/app/output/source-map.mdx +10 -3
- package/docs/zh/configure/app/output/ssg.mdx +13 -45
- package/docs/zh/configure/app/output/ssgByEntries.mdx +94 -0
- package/docs/zh/configure/app/performance/build-cache.mdx +0 -4
- package/docs/zh/configure/app/resolve/alias-strategy.mdx +14 -0
- package/docs/zh/configure/app/resolve/alias.mdx +13 -0
- package/docs/zh/configure/app/resolve/condition-names.mdx +18 -0
- package/docs/zh/configure/app/resolve/dedupe.mdx +14 -0
- package/docs/zh/configure/app/resolve/extensions.mdx +18 -0
- package/docs/zh/configure/app/runtime/0-intro.mdx +2 -53
- package/docs/zh/configure/app/security/check-syntax.mdx +1 -1
- package/docs/zh/configure/app/server/port.mdx +2 -21
- package/docs/zh/configure/app/server/rsc.mdx +30 -0
- package/docs/zh/configure/app/server/ssr.mdx +21 -11
- package/docs/zh/configure/app/source/decorators.mdx +4 -4
- package/docs/zh/configure/app/source/entries.mdx +0 -2
- package/docs/zh/configure/app/source/main-entry-name.mdx +4 -4
- package/docs/zh/configure/app/source/transform-import.mdx +1 -59
- package/docs/zh/configure/app/tools/bundler-chain.mdx +6 -6
- package/docs/zh/configure/app/tools/css-extract.mdx +1 -1
- package/docs/zh/configure/app/tools/dev-server.mdx +14 -248
- package/docs/zh/configure/app/tools/html-plugin.mdx +3 -2
- package/docs/zh/configure/app/tools/lightningcss-loader.mdx +0 -1
- package/docs/zh/configure/app/tools/swc.mdx +1 -43
- package/docs/zh/configure/app/usage.mdx +8 -18
- package/docs/zh/guides/_meta.json +5 -1
- package/docs/zh/guides/advanced-features/_meta.json +6 -1
- package/docs/zh/guides/advanced-features/bff/cross-project.mdx +8 -16
- package/docs/zh/guides/advanced-features/bff/extend-server.mdx +25 -8
- package/docs/zh/guides/advanced-features/bff/frameworks.mdx +1 -1
- package/docs/zh/guides/advanced-features/bff/function.mdx +7 -12
- package/docs/zh/guides/advanced-features/bff/sdk.mdx +4 -4
- package/docs/zh/guides/advanced-features/build-performance.mdx +23 -30
- package/docs/zh/guides/advanced-features/compatibility.mdx +44 -0
- package/docs/zh/guides/advanced-features/international/_meta.json +11 -0
- package/docs/zh/guides/advanced-features/international/advanced.mdx +193 -0
- package/docs/zh/guides/advanced-features/international/api.mdx +400 -0
- package/docs/zh/guides/advanced-features/international/basic.mdx +416 -0
- package/docs/zh/guides/advanced-features/international/best-practices.mdx +135 -0
- package/docs/zh/guides/advanced-features/international/configuration.mdx +441 -0
- package/docs/zh/guides/advanced-features/international/locale-detection.mdx +304 -0
- package/docs/zh/guides/advanced-features/international/quick-start.mdx +149 -0
- package/docs/zh/guides/advanced-features/international/resource-loading.mdx +417 -0
- package/docs/zh/guides/advanced-features/international/routing.mdx +212 -0
- package/docs/zh/guides/advanced-features/international.mdx +36 -0
- package/docs/zh/guides/advanced-features/low-level.mdx +21 -16
- package/docs/zh/guides/advanced-features/page-performance/code-split.mdx +3 -3
- package/docs/zh/guides/advanced-features/page-performance/inline-assets.mdx +4 -4
- package/docs/zh/guides/advanced-features/page-performance/optimize-bundle.mdx +7 -21
- package/docs/zh/guides/advanced-features/page-performance/react-compiler.mdx +1 -8
- package/docs/zh/guides/advanced-features/server-monitor/logger.mdx +0 -4
- package/docs/zh/guides/advanced-features/server-monitor/monitors.mdx +63 -35
- package/docs/zh/guides/advanced-features/web-server.mdx +79 -300
- package/docs/zh/guides/basic-features/_meta.json +6 -1
- package/docs/zh/guides/basic-features/css/css-in-js.mdx +40 -5
- package/docs/zh/guides/basic-features/css/css-modules.mdx +6 -17
- package/docs/zh/guides/basic-features/css/css.mdx +2 -2
- package/docs/zh/guides/basic-features/css/tailwindcss.mdx +6 -90
- package/docs/zh/guides/basic-features/data/data-cache.mdx +8 -5
- package/docs/zh/guides/basic-features/data/data-fetch.mdx +6 -5
- package/docs/zh/guides/basic-features/data/data-write.mdx +4 -4
- package/docs/zh/guides/basic-features/debug/mock.mdx +4 -1
- package/docs/zh/guides/basic-features/debug/proxy.mdx +0 -8
- package/docs/zh/guides/basic-features/debug/rsdoctor.mdx +6 -6
- package/docs/zh/guides/basic-features/deploy.mdx +24 -20
- package/docs/zh/guides/basic-features/env-vars.mdx +1 -1
- package/docs/zh/guides/basic-features/html.mdx +2 -2
- package/docs/zh/guides/basic-features/output-files.mdx +3 -3
- package/docs/zh/guides/basic-features/render/_meta.json +1 -1
- package/docs/zh/guides/basic-features/render/before-render.mdx +17 -24
- package/docs/zh/guides/basic-features/render/overview.mdx +52 -0
- package/docs/zh/guides/basic-features/render/rsc.mdx +413 -0
- package/docs/zh/guides/basic-features/render/ssg.mdx +27 -69
- package/docs/zh/guides/basic-features/render/ssr-cache.mdx +5 -5
- package/docs/zh/guides/basic-features/render/ssr.mdx +34 -31
- package/docs/zh/guides/basic-features/render/streaming-ssr.mdx +34 -14
- package/docs/zh/guides/basic-features/routes/_meta.json +1 -0
- package/docs/zh/guides/basic-features/routes/config-routes.mdx +426 -0
- package/docs/zh/guides/basic-features/{routes.mdx → routes/routes.mdx} +8 -114
- package/docs/zh/guides/basic-features/static-assets/json-files.mdx +21 -3
- package/docs/zh/guides/basic-features/static-assets.mdx +2 -2
- package/docs/zh/guides/basic-features/testing/cypress.mdx +5 -5
- package/docs/zh/guides/basic-features/testing/jest.mdx +12 -12
- package/docs/zh/guides/concept/builder.mdx +24 -9
- package/docs/zh/guides/concept/entries.mdx +95 -92
- package/docs/zh/guides/get-started/glossary.mdx +0 -18
- package/docs/zh/guides/get-started/introduction.mdx +1 -5
- package/docs/zh/guides/get-started/quick-start.mdx +5 -72
- package/docs/zh/guides/get-started/tech-stack.mdx +8 -26
- package/docs/zh/guides/get-started/upgrade.mdx +30 -23
- package/docs/zh/guides/topic-detail/_meta.json +0 -12
- package/docs/zh/guides/topic-detail/module-federation/_meta.json +1 -1
- package/docs/zh/guides/topic-detail/module-federation/application.mdx +18 -16
- package/docs/zh/guides/topic-detail/module-federation/i18n.mdx +623 -0
- package/docs/zh/guides/topic-detail/module-federation/introduce.mdx +4 -4
- package/docs/zh/guides/topic-detail/module-federation/ssr.mdx +51 -5
- package/docs/zh/guides/topic-detail/module-federation/usage.mdx +11 -32
- package/docs/zh/guides/troubleshooting/builder.mdx +3 -84
- package/docs/zh/guides/troubleshooting/cli.mdx +6 -30
- package/docs/zh/guides/troubleshooting/dependencies.mdx +23 -23
- package/docs/zh/guides/upgrade/_meta.json +1 -0
- package/docs/zh/guides/upgrade/config.mdx +809 -0
- package/docs/zh/guides/upgrade/entry.mdx +463 -0
- package/docs/zh/guides/upgrade/other.md +90 -0
- package/docs/zh/guides/upgrade/overview.mdx +36 -0
- package/docs/zh/guides/upgrade/tailwindcss.mdx +130 -0
- package/docs/zh/guides/upgrade/web-server.md +93 -0
- package/docs/zh/plugin/cli-plugins/api.mdx +4 -5
- package/docs/zh/plugin/cli-plugins/migration.mdx +30 -45
- package/docs/zh/plugin/introduction.mdx +36 -24
- package/docs/zh/plugin/official/_meta.json +0 -5
- package/docs/zh/plugin/official/cli-plugins/_meta.json +1 -1
- package/docs/zh/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
- package/docs/zh/plugin/official/cli-plugins.mdx +0 -2
- package/docs/zh/plugin/plugin-system.mdx +45 -42
- package/docs/zh/plugin/runtime-plugins/api.mdx +58 -56
- package/docs/zh/plugin/runtime-plugins/migration.mdx +26 -17
- package/docs/zh/tutorials/_meta.json +0 -10
- package/docs/zh/tutorials/examples/csr-auth.mdx +1 -1
- package/docs/zh/tutorials/foundations/introduction.mdx +8 -25
- package/i18n.json +0 -16
- package/package.json +12 -12
- package/rspress.config.ts +5 -8
- package/src/components/ContentCard/index.module.scss +11 -7
- package/src/components/ContentCard/index.tsx +1 -1
- package/src/components/FeatureLayout/index.module.css +1 -1
- package/src/components/Footer/index.tsx +2 -14
- package/src/components/Footer/styles.module.scss +5 -5
- package/src/components/ListCard/index.tsx +1 -1
- package/src/components/RandomMemberList/index.tsx +1 -1
- package/src/components/RsbuildLink/index.tsx +1 -1
- package/src/components/Sandpack/index.tsx +1 -1
- package/src/custom.scss +15 -0
- package/src/i18n/enUS.ts +2 -4
- package/src/i18n/index.ts +1 -1
- package/src/i18n/zhCN.ts +2 -4
- package/src/index.ts +2 -1
- package/src/pages/index.module.scss +59 -41
- package/src/pages/index.tsx +9 -24
- package/docs/en/apis/app/hooks/server/index_.mdx +0 -10
- package/docs/en/apis/app/hooks/src/index_.mdx +0 -38
- package/docs/en/apis/app/hooks/src/stories.mdx +0 -16
- package/docs/en/apis/app/runtime/app/define-config.mdx +0 -67
- package/docs/en/apis/app/runtime/core/bootstrap.mdx +0 -74
- package/docs/en/apis/app/runtime/core/create-app.mdx +0 -49
- package/docs/en/apis/app/runtime/core/use-loader.mdx +0 -89
- package/docs/en/apis/app/runtime/core/use-module-apps.mdx +0 -140
- package/docs/en/apis/app/runtime/core/use-runtime-context.mdx +0 -116
- package/docs/en/apis/app/runtime/model/Provider.mdx +0 -36
- package/docs/en/apis/app/runtime/model/auto-actions.mdx +0 -122
- package/docs/en/apis/app/runtime/model/connect.mdx +0 -146
- package/docs/en/apis/app/runtime/model/create-app.mdx +0 -75
- package/docs/en/apis/app/runtime/model/create-store.mdx +0 -61
- package/docs/en/apis/app/runtime/model/handle-effect.mdx +0 -107
- package/docs/en/apis/app/runtime/model/model_.mdx +0 -198
- package/docs/en/apis/app/runtime/model/use-local-model.mdx +0 -29
- package/docs/en/apis/app/runtime/model/use-model.mdx +0 -89
- package/docs/en/apis/app/runtime/model/use-static-model.mdx +0 -51
- package/docs/en/apis/app/runtime/model/use-store.mdx +0 -26
- package/docs/en/apis/app/runtime/ssr/pre-render.mdx +0 -96
- package/docs/en/apis/app/runtime/web-server/hook.mdx +0 -134
- package/docs/en/apis/app/runtime/web-server/middleware.mdx +0 -113
- package/docs/en/apis/app/runtime/web-server/unstable_middleware.mdx +0 -167
- package/docs/en/components/bff-proxy-path-rewrite.mdx +0 -16
- package/docs/en/components/bff-proxy-principle.mdx +0 -1
- package/docs/en/components/builder.mdx +0 -3
- package/docs/en/components/create-bff-api-app.mdx +0 -25
- package/docs/en/components/custom-router-micro-frontend.mdx +0 -40
- package/docs/en/components/enable-micro-frontend.mdx +0 -30
- package/docs/en/components/enableSwc.mdx +0 -17
- package/docs/en/components/global-proxy-config.mdx +0 -85
- package/docs/en/components/global-proxy.mdx +0 -29
- package/docs/en/components/package-manager.mdx +0 -11
- package/docs/en/components/reduck-notify.mdx +0 -27
- package/docs/en/components/reduck-tip.mdx +0 -8
- package/docs/en/configure/app/auto-load-plugin.mdx +0 -66
- package/docs/en/configure/app/deploy/microFrontend.mdx +0 -53
- package/docs/en/configure/app/dev/port.mdx +0 -25
- package/docs/en/configure/app/dev/proxy.mdx +0 -9
- package/docs/en/configure/app/experiments/lazy-compilation.mdx +0 -106
- package/docs/en/configure/app/html/disable-html-folder.mdx +0 -46
- package/docs/en/configure/app/html/favicon-by-entries.mdx +0 -36
- package/docs/en/configure/app/html/inject-by-entries.mdx +0 -36
- package/docs/en/configure/app/html/meta-by-entries.mdx +0 -48
- package/docs/en/configure/app/html/tags-by-entries.mdx +0 -44
- package/docs/en/configure/app/html/template-by-entries.mdx +0 -33
- package/docs/en/configure/app/html/template-parameters-by-entries.mdx +0 -35
- package/docs/en/configure/app/html/title-by-entries.mdx +0 -37
- package/docs/en/configure/app/output/css-module-local-ident-name.mdx +0 -21
- package/docs/en/configure/app/output/disable-css-extract.mdx +0 -16
- package/docs/en/configure/app/output/disable-filename-hash.mdx +0 -16
- package/docs/en/configure/app/output/disable-minimize.mdx +0 -14
- package/docs/en/configure/app/output/disable-node-polyfill.mdx +0 -22
- package/docs/en/configure/app/output/disable-source-map.mdx +0 -31
- package/docs/en/configure/app/output/enable-asset-fallback.mdx +0 -36
- package/docs/en/configure/app/output/enable-inline-scripts.mdx +0 -22
- package/docs/en/configure/app/output/enable-inline-styles.mdx +0 -22
- package/docs/en/configure/app/output/enable-latest-decorators.mdx +0 -14
- package/docs/en/configure/app/performance/transform-lodash.mdx +0 -52
- package/docs/en/configure/app/runtime/master-app.mdx +0 -36
- package/docs/en/configure/app/runtime/state.mdx +0 -52
- package/docs/en/configure/app/source/disable-entry-dirs.mdx +0 -38
- package/docs/en/configure/app/source/enable-custom-entry.mdx +0 -68
- package/docs/en/configure/app/source/module-scopes.mdx +0 -72
- package/docs/en/configure/app/source/resolve-extension-prefix.mdx +0 -55
- package/docs/en/configure/app/source/resolve-main-fields.mdx +0 -46
- package/docs/en/configure/app/tools/esbuild.mdx +0 -44
- package/docs/en/configure/app/tools/pug.mdx +0 -54
- package/docs/en/configure/app/tools/styled-components.mdx +0 -55
- package/docs/en/configure/app/tools/tailwindcss.mdx +0 -98
- package/docs/en/configure/app/tools/terser.mdx +0 -58
- package/docs/en/configure/app/tools/ts-loader.mdx +0 -76
- package/docs/en/configure/app/tools/webpack-chain.mdx +0 -249
- package/docs/en/configure/app/tools/webpack.mdx +0 -305
- package/docs/en/guides/deprecated.md +0 -17
- package/docs/en/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -27
- package/docs/en/guides/topic-detail/micro-frontend/c02-development.mdx +0 -290
- package/docs/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -298
- package/docs/en/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -58
- package/docs/en/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -26
- package/docs/en/guides/topic-detail/model/_meta.json +0 -14
- package/docs/en/guides/topic-detail/model/auto-actions.mdx +0 -85
- package/docs/en/guides/topic-detail/model/computed-state.mdx +0 -148
- package/docs/en/guides/topic-detail/model/define-model.mdx +0 -62
- package/docs/en/guides/topic-detail/model/faq.mdx +0 -35
- package/docs/en/guides/topic-detail/model/manage-effects.mdx +0 -247
- package/docs/en/guides/topic-detail/model/model-communicate.mdx +0 -217
- package/docs/en/guides/topic-detail/model/performance.mdx +0 -167
- package/docs/en/guides/topic-detail/model/quick-start.mdx +0 -117
- package/docs/en/guides/topic-detail/model/redux-integration.mdx +0 -20
- package/docs/en/guides/topic-detail/model/typescript-best-practice.mdx +0 -68
- package/docs/en/guides/topic-detail/model/use-model.mdx +0 -243
- package/docs/en/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -46
- package/docs/en/plugin/official/cli-plugins/plugin-swc.mdx +0 -363
- package/docs/en/plugin/official/cli-plugins/plugin-tailwind.mdx +0 -5
- package/docs/en/plugin/official/rsbuild-plugins/_meta.json +0 -1
- package/docs/en/plugin/official/rsbuild-plugins/plugin-esbuild.mdx +0 -205
- package/docs/en/plugin/official/rsbuild-plugins.mdx +0 -3
- package/docs/en/tutorials/first-app/c01-start.mdx +0 -99
- package/docs/en/tutorials/first-app/c02-component.mdx +0 -60
- package/docs/en/tutorials/first-app/c03-css.mdx +0 -324
- package/docs/en/tutorials/first-app/c04-routes.mdx +0 -172
- package/docs/en/tutorials/first-app/c05-loader.mdx +0 -87
- package/docs/en/tutorials/first-app/c06-model.mdx +0 -278
- package/docs/en/tutorials/first-app/c07-container.mdx +0 -281
- package/docs/en/tutorials/first-app/c08-entries.mdx +0 -135
- package/docs/zh/apis/app/hooks/server/index_.mdx +0 -10
- package/docs/zh/apis/app/hooks/src/index_.mdx +0 -39
- package/docs/zh/apis/app/hooks/src/stories.mdx +0 -16
- package/docs/zh/apis/app/runtime/app/define-config.mdx +0 -67
- package/docs/zh/apis/app/runtime/core/bootstrap.mdx +0 -74
- package/docs/zh/apis/app/runtime/core/create-app.mdx +0 -35
- package/docs/zh/apis/app/runtime/core/use-loader.mdx +0 -89
- package/docs/zh/apis/app/runtime/core/use-module-apps.mdx +0 -179
- package/docs/zh/apis/app/runtime/core/use-runtime-context.mdx +0 -116
- package/docs/zh/apis/app/runtime/model/Provider.mdx +0 -36
- package/docs/zh/apis/app/runtime/model/auto-actions.mdx +0 -122
- package/docs/zh/apis/app/runtime/model/connect.mdx +0 -143
- package/docs/zh/apis/app/runtime/model/create-app.mdx +0 -75
- package/docs/zh/apis/app/runtime/model/create-store.mdx +0 -61
- package/docs/zh/apis/app/runtime/model/handle-effect.mdx +0 -108
- package/docs/zh/apis/app/runtime/model/model_.mdx +0 -201
- package/docs/zh/apis/app/runtime/model/use-local-model.mdx +0 -29
- package/docs/zh/apis/app/runtime/model/use-model.mdx +0 -89
- package/docs/zh/apis/app/runtime/model/use-static-model.mdx +0 -49
- package/docs/zh/apis/app/runtime/model/use-store.mdx +0 -26
- package/docs/zh/apis/app/runtime/ssr/pre-render.mdx +0 -96
- package/docs/zh/apis/app/runtime/web-server/hook.mdx +0 -136
- package/docs/zh/apis/app/runtime/web-server/middleware.mdx +0 -114
- package/docs/zh/apis/app/runtime/web-server/unstable_middleware.mdx +0 -165
- package/docs/zh/components/bff-proxy-path-rewrite.mdx +0 -16
- package/docs/zh/components/bff-proxy-principle.mdx +0 -1
- package/docs/zh/components/builder.mdx +0 -3
- package/docs/zh/components/create-bff-api-app.mdx +0 -25
- package/docs/zh/components/custom-router-micro-frontend.mdx +0 -40
- package/docs/zh/components/enable-micro-frontend.mdx +0 -30
- package/docs/zh/components/enableSwc.mdx +0 -17
- package/docs/zh/components/global-proxy-config.mdx +0 -85
- package/docs/zh/components/global-proxy.mdx +0 -29
- package/docs/zh/components/package-manager.mdx +0 -11
- package/docs/zh/components/reduck-notify.mdx +0 -27
- package/docs/zh/components/reduck-tip.mdx +0 -8
- package/docs/zh/configure/app/auto-load-plugin.mdx +0 -66
- package/docs/zh/configure/app/deploy/microFrontend.mdx +0 -55
- package/docs/zh/configure/app/dev/port.mdx +0 -25
- package/docs/zh/configure/app/dev/proxy.mdx +0 -9
- package/docs/zh/configure/app/experiments/lazy-compilation.mdx +0 -105
- package/docs/zh/configure/app/html/disable-html-folder.mdx +0 -45
- package/docs/zh/configure/app/html/favicon-by-entries.mdx +0 -37
- package/docs/zh/configure/app/html/inject-by-entries.mdx +0 -37
- package/docs/zh/configure/app/html/meta-by-entries.mdx +0 -48
- package/docs/zh/configure/app/html/tags-by-entries.mdx +0 -44
- package/docs/zh/configure/app/html/template-by-entries.mdx +0 -33
- package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +0 -36
- package/docs/zh/configure/app/html/title-by-entries.mdx +0 -37
- package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +0 -21
- package/docs/zh/configure/app/output/disable-css-extract.mdx +0 -16
- package/docs/zh/configure/app/output/disable-filename-hash.mdx +0 -16
- package/docs/zh/configure/app/output/disable-minimize.mdx +0 -14
- package/docs/zh/configure/app/output/disable-node-polyfill.mdx +0 -22
- package/docs/zh/configure/app/output/disable-source-map.mdx +0 -31
- package/docs/zh/configure/app/output/enable-asset-fallback.mdx +0 -36
- package/docs/zh/configure/app/output/enable-inline-scripts.mdx +0 -22
- package/docs/zh/configure/app/output/enable-inline-styles.mdx +0 -22
- package/docs/zh/configure/app/output/enable-latest-decorators.mdx +0 -14
- package/docs/zh/configure/app/performance/transform-lodash.mdx +0 -52
- package/docs/zh/configure/app/runtime/master-app.mdx +0 -38
- package/docs/zh/configure/app/runtime/state.mdx +0 -52
- package/docs/zh/configure/app/source/disable-entry-dirs.mdx +0 -38
- package/docs/zh/configure/app/source/enable-custom-entry.mdx +0 -67
- package/docs/zh/configure/app/source/module-scopes.mdx +0 -72
- package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +0 -57
- package/docs/zh/configure/app/source/resolve-main-fields.mdx +0 -46
- package/docs/zh/configure/app/tools/esbuild.mdx +0 -44
- package/docs/zh/configure/app/tools/pug.mdx +0 -54
- package/docs/zh/configure/app/tools/styled-components.mdx +0 -54
- package/docs/zh/configure/app/tools/tailwindcss.mdx +0 -98
- package/docs/zh/configure/app/tools/terser.mdx +0 -58
- package/docs/zh/configure/app/tools/ts-loader.mdx +0 -76
- package/docs/zh/configure/app/tools/webpack-chain.mdx +0 -253
- package/docs/zh/configure/app/tools/webpack.mdx +0 -305
- package/docs/zh/guides/advanced-features/rspack-start.mdx +0 -154
- package/docs/zh/guides/deprecated.md +0 -19
- package/docs/zh/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -26
- package/docs/zh/guides/topic-detail/micro-frontend/c02-development.mdx +0 -332
- package/docs/zh/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -296
- package/docs/zh/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -58
- package/docs/zh/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -27
- package/docs/zh/guides/topic-detail/model/_meta.json +0 -14
- package/docs/zh/guides/topic-detail/model/auto-actions.mdx +0 -88
- package/docs/zh/guides/topic-detail/model/computed-state.mdx +0 -147
- package/docs/zh/guides/topic-detail/model/define-model.mdx +0 -63
- package/docs/zh/guides/topic-detail/model/faq.mdx +0 -36
- package/docs/zh/guides/topic-detail/model/manage-effects.mdx +0 -256
- package/docs/zh/guides/topic-detail/model/model-communicate.mdx +0 -217
- package/docs/zh/guides/topic-detail/model/performance.mdx +0 -167
- package/docs/zh/guides/topic-detail/model/quick-start.mdx +0 -117
- package/docs/zh/guides/topic-detail/model/redux-integration.mdx +0 -20
- package/docs/zh/guides/topic-detail/model/typescript-best-practice.mdx +0 -67
- package/docs/zh/guides/topic-detail/model/use-model.mdx +0 -248
- package/docs/zh/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -46
- package/docs/zh/plugin/official/cli-plugins/plugin-swc.mdx +0 -351
- package/docs/zh/plugin/official/cli-plugins/plugin-tailwind.mdx +0 -5
- package/docs/zh/plugin/official/rsbuild-plugins/_meta.json +0 -1
- package/docs/zh/plugin/official/rsbuild-plugins/plugin-esbuild.mdx +0 -201
- package/docs/zh/plugin/official/rsbuild-plugins.mdx +0 -3
- package/docs/zh/tutorials/first-app/c01-start.mdx +0 -99
- package/docs/zh/tutorials/first-app/c02-component.mdx +0 -60
- package/docs/zh/tutorials/first-app/c03-css.mdx +0 -323
- package/docs/zh/tutorials/first-app/c04-routes.mdx +0 -172
- package/docs/zh/tutorials/first-app/c05-loader.mdx +0 -89
- package/docs/zh/tutorials/first-app/c06-model.mdx +0 -274
- package/docs/zh/tutorials/first-app/c07-container.mdx +0 -281
- package/docs/zh/tutorials/first-app/c08-entries.mdx +0 -135
- /package/docs/en/components/{reduck-migration.mdx → auto-upgrade.mdx} +0 -0
- /package/docs/{zh/components/reduck-migration.mdx → en/components/international/platform-support.mdx} +0 -0
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: bootstrap
|
|
3
|
-
---
|
|
4
|
-
# bootstrap
|
|
5
|
-
|
|
6
|
-
:::warning
|
|
7
|
-
Soon to be deprecated, it is recommended to use [`render`](/apis/app/runtime/core/render).
|
|
8
|
-
:::
|
|
9
|
-
|
|
10
|
-
Used to start and mount App, usually not manually called. This API is only required when using [Custom Bootstrap](/guides/concept/entries#custom-bootstrap).
|
|
11
|
-
|
|
12
|
-
## Usage
|
|
13
|
-
|
|
14
|
-
```ts
|
|
15
|
-
import ReactDOM from 'react-dom/client';
|
|
16
|
-
import { bootstrap } from '@modern-js/runtime';
|
|
17
|
-
|
|
18
|
-
bootstrap(App, 'root', undefined, ReactDOM);
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## Function Signature
|
|
22
|
-
|
|
23
|
-
```ts
|
|
24
|
-
type BootStrap<T = unknown> = (
|
|
25
|
-
App: React.ComponentType,
|
|
26
|
-
id: string | HTMLElement | RuntimeContext,
|
|
27
|
-
root?: any,
|
|
28
|
-
ReactDOM?: {
|
|
29
|
-
render?: Renderer;
|
|
30
|
-
hydrate?: Renderer;
|
|
31
|
-
createRoot?: typeof createRoot;
|
|
32
|
-
hydrateRoot?: typeof hydrateRoot;
|
|
33
|
-
},
|
|
34
|
-
) => Promise<T>;
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
### Input
|
|
38
|
-
|
|
39
|
-
- `AppComponent`: The ReactElement instance created by [`createApp`](./create-app).
|
|
40
|
-
- `rootId`: DOM root element id to mount, such as `"root"`.
|
|
41
|
-
- `root`: The return value of ReactDOM.createRoot, used for scenarios where the root needs to be destroyed outside of the bootstrap function.
|
|
42
|
-
- `ReactDOM`: The ReactDOM object, used to differentiate between React 18 and React 17 APIs.
|
|
43
|
-
|
|
44
|
-
## Example
|
|
45
|
-
|
|
46
|
-
```tsx
|
|
47
|
-
import ReactDOM from 'react-dom/client';
|
|
48
|
-
import { createApp, bootstrap } from '@modern-js/runtime';
|
|
49
|
-
|
|
50
|
-
function App() {
|
|
51
|
-
return <div>Hello Modern.js</div>;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
const WrappedApp = createApp({
|
|
55
|
-
// customized plugin
|
|
56
|
-
plugins: [customPlugin()],
|
|
57
|
-
})(App);
|
|
58
|
-
|
|
59
|
-
bootstrap(WrappedApp, 'root', undefined, ReactDOM);
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
:::info
|
|
63
|
-
since `@modern-js/runtime/plugins` is a alias, when used in a ts project, its type needs to be declared, Just add the following type declarations to `src/modern-app-env.d.ts`:
|
|
64
|
-
|
|
65
|
-
```ts
|
|
66
|
-
declare module '@modern-js/runtime/plugins';
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
:::
|
|
70
|
-
|
|
71
|
-
:::warning
|
|
72
|
-
bootstrap only supported for use in CSR.
|
|
73
|
-
|
|
74
|
-
:::
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: createApp
|
|
3
|
-
---
|
|
4
|
-
# createApp
|
|
5
|
-
|
|
6
|
-
:::warning
|
|
7
|
-
Soon to be deprecated, it is recommended to use [`createRoot`](/apis/app/runtime/core/create-root).
|
|
8
|
-
:::
|
|
9
|
-
|
|
10
|
-
Used for creating custom entries and customizing runtime plugins.
|
|
11
|
-
|
|
12
|
-
## Usage
|
|
13
|
-
|
|
14
|
-
```ts
|
|
15
|
-
import { createApp } from '@modern-js/runtime';
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Function Signature
|
|
19
|
-
|
|
20
|
-
```ts
|
|
21
|
-
import type { Plugin } from '@modern-js/runtime';
|
|
22
|
-
|
|
23
|
-
function createApp(options: { plugins: Plugin[] }): React.ComponentType<any>;
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### Input
|
|
27
|
-
|
|
28
|
-
- `options`: optional configuration.
|
|
29
|
-
- `plugins`: custom plugin extensions.
|
|
30
|
-
|
|
31
|
-
## Example
|
|
32
|
-
|
|
33
|
-
### Create Custom Entry
|
|
34
|
-
|
|
35
|
-
For details, see [`bootstrap`](./bootstrap.mdx).
|
|
36
|
-
|
|
37
|
-
### Custom Plugins
|
|
38
|
-
|
|
39
|
-
```ts
|
|
40
|
-
import { createApp } from '@modern-js/runtime';
|
|
41
|
-
|
|
42
|
-
function App() {
|
|
43
|
-
return <div>app</div>;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export default createApp({
|
|
47
|
-
plugins: [customPlugin()],
|
|
48
|
-
})(App);
|
|
49
|
-
```
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: useLoader
|
|
3
|
-
---
|
|
4
|
-
# useLoader
|
|
5
|
-
|
|
6
|
-
`useLoader` is an Isomorphic API, usually used to make asynchronous requests. During Server-Side Rendering (SSR), the server uses `useLoader` to prefetch the data, which is then reused on the client side.
|
|
7
|
-
|
|
8
|
-
:::tip
|
|
9
|
-
The `useLoader` API is currently not supported when using Rspack as the bundler.
|
|
10
|
-
:::
|
|
11
|
-
|
|
12
|
-
## Usage
|
|
13
|
-
|
|
14
|
-
```ts
|
|
15
|
-
import { useLoader } from '@modern-js/runtime';
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Function Signature
|
|
19
|
-
|
|
20
|
-
```ts
|
|
21
|
-
type LoaderFn = (context: runtimeContext) => Promise<unknow>;
|
|
22
|
-
type Options = {
|
|
23
|
-
onSuccess: (data: Record<string, any>) => void;
|
|
24
|
-
onError: (error: Error) => void;
|
|
25
|
-
initialData: Record<string, any>;
|
|
26
|
-
skip: boolean;
|
|
27
|
-
params: Record<string, any>;
|
|
28
|
-
static: boolean;
|
|
29
|
-
};
|
|
30
|
-
type ReturnData = {
|
|
31
|
-
data: Record<string, any>;
|
|
32
|
-
loading: boolean;
|
|
33
|
-
error: Error;
|
|
34
|
-
reload: (params?: Record<string, any>) => Promise<any> | undefined;
|
|
35
|
-
reloading: boolean;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
function useLoader(loaderFn: LoaderFn, options: Options): ReturnData;
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
:::info
|
|
42
|
-
`runtimeContext` can refer to [useRuntimeContext](/apis/app/runtime/core/use-runtime-context).
|
|
43
|
-
|
|
44
|
-
:::
|
|
45
|
-
|
|
46
|
-
### Input
|
|
47
|
-
|
|
48
|
-
- `loaderFn`: function for loading data, returning a Promise.
|
|
49
|
-
- `options`: optional configuration.
|
|
50
|
-
- `onSuccess`: successful callback.
|
|
51
|
-
- `onError`: error callback.
|
|
52
|
-
- `initialData`: the initial data before the first execution,.
|
|
53
|
-
- `skip`: when the value is `true`, the function does not execute.
|
|
54
|
-
- `params`: when the result of the `params` serialization changes, the function is re-executed. `params` is also passed in as the second argument of the function.
|
|
55
|
-
- `static`: when the value is `true`, `useLoader` is used for [SSG](/guides/basic-features/render/ssg).
|
|
56
|
-
|
|
57
|
-
### Return Value
|
|
58
|
-
|
|
59
|
-
- `data`: return data on successful execution.
|
|
60
|
-
- `loading`: indicates whether the function is in execution.
|
|
61
|
-
- `error`: error message when function execution fails.
|
|
62
|
-
- `reload`: the function can be re-executed after the call.
|
|
63
|
-
- `params`: when the value is `undefined`, the last value will be reused; otherwise, the function will be re-executed with the new value.
|
|
64
|
-
- `reloading`: during the execution of the call to `reload`, the value of `reloading` is `true`.
|
|
65
|
-
|
|
66
|
-
## Example
|
|
67
|
-
|
|
68
|
-
```ts
|
|
69
|
-
function Container() {
|
|
70
|
-
const { data, error, loading } = useLoader(
|
|
71
|
-
async (context, params) => {
|
|
72
|
-
console.log(params) // nicole
|
|
73
|
-
return fetch(user);
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
onSuccess: data => {
|
|
77
|
-
console.log('I did success:(', data);
|
|
78
|
-
},
|
|
79
|
-
onError: error => {
|
|
80
|
-
console.log('I met error:)', error);
|
|
81
|
-
},
|
|
82
|
-
initialData: { name: 'nicole', gender: 'female' },
|
|
83
|
-
params: 'nicole'
|
|
84
|
-
}
|
|
85
|
-
);
|
|
86
|
-
|
|
87
|
-
return ...;
|
|
88
|
-
}
|
|
89
|
-
```
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: useModuleApps
|
|
3
|
-
---
|
|
4
|
-
# useModuleApps
|
|
5
|
-
|
|
6
|
-
Returns the React components of all micro-front-end sub-applications, allowing for flexible control over routing.
|
|
7
|
-
|
|
8
|
-
## Usage
|
|
9
|
-
|
|
10
|
-
```tsx
|
|
11
|
-
import { useModuleApps } from '@modern-js/plugin-garfish/runtime';
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
## Function Signature
|
|
15
|
-
|
|
16
|
-
`function useModuleApps(): Record<string, React.FC<any>>`
|
|
17
|
-
|
|
18
|
-
Returns the React components wrapped around each subapp.
|
|
19
|
-
|
|
20
|
-
## Example
|
|
21
|
-
|
|
22
|
-
You need to configure the micro-front-end sub-application information first.
|
|
23
|
-
|
|
24
|
-
import EnableMicroFrontend from "@site-docs-en/components/enable-micro-frontend";
|
|
25
|
-
|
|
26
|
-
<EnableMicroFrontend />
|
|
27
|
-
|
|
28
|
-
```tsx title=App.tsx
|
|
29
|
-
function App() {
|
|
30
|
-
const { Home, Contact } = useModuleApps();
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<div>
|
|
34
|
-
Master APP
|
|
35
|
-
<Route exact path="/home">
|
|
36
|
-
<Home />
|
|
37
|
-
</Route>
|
|
38
|
-
<Route exact path="/home">
|
|
39
|
-
<Contact />
|
|
40
|
-
</Route>
|
|
41
|
-
</div>
|
|
42
|
-
);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
defineConfig(App, {
|
|
46
|
-
masterApp: {
|
|
47
|
-
apps: [
|
|
48
|
-
{
|
|
49
|
-
// name is case-sensitive, what name provides is what useModuleApps returns
|
|
50
|
-
name: 'Home',
|
|
51
|
-
entry: 'http://127.0.0.1:8081/',
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
name: 'Contact',
|
|
55
|
-
entry: 'http://localhost:8082',
|
|
56
|
-
},
|
|
57
|
-
],
|
|
58
|
-
},
|
|
59
|
-
});
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
Get the `Home` and `Contact` sub-application components(the same as name in the config) through `useModuleApps()`. After that, you can load the child application just like a normal React component.
|
|
63
|
-
|
|
64
|
-
### Centralized Routing
|
|
65
|
-
|
|
66
|
-
**Centralized Routing** is a way to centrally configure the activation routes of sub-applications. Add `activeWhen` config to enable **Centralized Routing**.
|
|
67
|
-
|
|
68
|
-
import MicroRuntimeConfig from "@site-docs-en/components/micro-runtime-config";
|
|
69
|
-
|
|
70
|
-
<MicroRuntimeConfig />
|
|
71
|
-
|
|
72
|
-
Then use the `useModuleApp` method to get the `MApp` component in the main application, and render the `MApp` in the main application.
|
|
73
|
-
|
|
74
|
-
```tsx title=main: App.tsx
|
|
75
|
-
import { useModuleApp } from '@modern-js/plugin-runtime';
|
|
76
|
-
|
|
77
|
-
function App() {
|
|
78
|
-
const { MApp } = useModuleApps();
|
|
79
|
-
|
|
80
|
-
return (
|
|
81
|
-
<div>
|
|
82
|
-
<MApp />
|
|
83
|
-
</div>
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
defineConfig(App, {
|
|
88
|
-
masterApp: {
|
|
89
|
-
apps: [
|
|
90
|
-
{
|
|
91
|
-
// name is case sensitive, what name provides is what useModuleApps returns
|
|
92
|
-
name: 'Dashboard',
|
|
93
|
-
activeWhen: '/dashboard',
|
|
94
|
-
entry: 'http://127.0.0.1:8081/',
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
name: 'TableList',
|
|
98
|
-
activeWhen: '/table',
|
|
99
|
-
entry: 'http://localhost:8082',
|
|
100
|
-
},
|
|
101
|
-
],
|
|
102
|
-
},
|
|
103
|
-
});
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
After starting the application in this way, accessing the `/dashboard` route will render the `Dashboard`, and accessing the `/table` route will render the `TableList`.
|
|
107
|
-
|
|
108
|
-
## Load Animation
|
|
109
|
-
|
|
110
|
-
You can customize the transition animation of the component loading process as follows.
|
|
111
|
-
|
|
112
|
-
```tsx title=App.tsx
|
|
113
|
-
function App() {
|
|
114
|
-
const {
|
|
115
|
-
Components: { Home },
|
|
116
|
-
} = useModuleApps();
|
|
117
|
-
|
|
118
|
-
return (
|
|
119
|
-
<div>
|
|
120
|
-
Master APP
|
|
121
|
-
<Route exact path="/home">
|
|
122
|
-
<Home
|
|
123
|
-
loadable={{
|
|
124
|
-
loading: ({ pastDelay, error }: any) => {
|
|
125
|
-
if (error) {
|
|
126
|
-
console.error(error);
|
|
127
|
-
return <div>error: {error?.message}</div>;
|
|
128
|
-
} else if (pastDelay) {
|
|
129
|
-
return <div>loading</div>;
|
|
130
|
-
} else {
|
|
131
|
-
return null;
|
|
132
|
-
}
|
|
133
|
-
},
|
|
134
|
-
}}
|
|
135
|
-
/>
|
|
136
|
-
</Route>
|
|
137
|
-
</div>
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
```
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
# useRuntimeContext
|
|
2
|
-
|
|
3
|
-
This function is primarily used to obtain the runtime context and can only be used in the function component.
|
|
4
|
-
|
|
5
|
-
## Usage
|
|
6
|
-
|
|
7
|
-
```tsx
|
|
8
|
-
import { useRuntimeContext } from '@modern-js/runtime';
|
|
9
|
-
|
|
10
|
-
export function App() {
|
|
11
|
-
const runtimeContext = useRuntimeContext();
|
|
12
|
-
return <div>Hello World</div>
|
|
13
|
-
}
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Function Signature
|
|
17
|
-
|
|
18
|
-
```ts
|
|
19
|
-
type RuntimeContext = {
|
|
20
|
-
context: RequestContext;
|
|
21
|
-
};
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### context
|
|
25
|
-
|
|
26
|
-
Used to get [Request Context](#request-context).
|
|
27
|
-
|
|
28
|
-
## Example
|
|
29
|
-
|
|
30
|
-
### Distinguish the runtime environment
|
|
31
|
-
|
|
32
|
-
```ts
|
|
33
|
-
function App() {
|
|
34
|
-
const { context } = useRuntimeContext();
|
|
35
|
-
|
|
36
|
-
if (context.isBrowser === true) {
|
|
37
|
-
// browser-side execution logic
|
|
38
|
-
console.log('browser render')
|
|
39
|
-
} else {
|
|
40
|
-
// The server-side executes logic, which can access the unique 'logger' attribute
|
|
41
|
-
context.logger.info('server render')
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### Request context
|
|
47
|
-
|
|
48
|
-
When SSR is enabled, uniform request contexts can be obtained in both the node environment and the browser-side environment.
|
|
49
|
-
|
|
50
|
-
The slightly different is that the node environment also supports setting response headers, response codes, and provides Logger logs and Metrics management.
|
|
51
|
-
|
|
52
|
-
:::tip
|
|
53
|
-
when ssr is disabled, only the part of information that can be obtained in the browser environment is included.
|
|
54
|
-
|
|
55
|
-
:::
|
|
56
|
-
|
|
57
|
-
import { Tabs, Tab as TabItem } from "@theme";
|
|
58
|
-
|
|
59
|
-
<Tabs
|
|
60
|
-
defaultValue="RequestContext"
|
|
61
|
-
values={[
|
|
62
|
-
{ label: 'RequestContext', value: 'RequestContext', },
|
|
63
|
-
{ label: 'ServerContext', value: 'ServerContext', },
|
|
64
|
-
{ label: 'ClientContext', value: 'ClientContext', },
|
|
65
|
-
]
|
|
66
|
-
}>
|
|
67
|
-
<TabItem value="RequestContext">
|
|
68
|
-
|
|
69
|
-
```ts
|
|
70
|
-
type RequestContext = ServerContext | ClientContext;
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
</TabItem>
|
|
74
|
-
<TabItem value="ServerContext">
|
|
75
|
-
|
|
76
|
-
```ts
|
|
77
|
-
interface ServerContext {
|
|
78
|
-
isBrowser: false;
|
|
79
|
-
request: {
|
|
80
|
-
userAgent: string;
|
|
81
|
-
cookie: string;
|
|
82
|
-
cookieMap: Record<string, any>;
|
|
83
|
-
query: Record<string, any>;
|
|
84
|
-
url: string;
|
|
85
|
-
host: string;
|
|
86
|
-
headers?: IncomingHttpHeaders;
|
|
87
|
-
};
|
|
88
|
-
response: {
|
|
89
|
-
setHeader: (key: string, value: string) => void;
|
|
90
|
-
status: (code: number) => void;
|
|
91
|
-
}
|
|
92
|
-
logger: Logger;
|
|
93
|
-
metrics: Metrics;
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
</TabItem>
|
|
98
|
-
<TabItem value="ClientContext">
|
|
99
|
-
|
|
100
|
-
```ts
|
|
101
|
-
interface ClientContext {
|
|
102
|
-
isBrowser: true;
|
|
103
|
-
request: {
|
|
104
|
-
userAgent: string;
|
|
105
|
-
cookie: string;
|
|
106
|
-
cookieMap: Record<string, any>;
|
|
107
|
-
query: Record<string, any>;
|
|
108
|
-
url: string;
|
|
109
|
-
host: string;
|
|
110
|
-
headers?: IncomingHttpHeaders;
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
</TabItem>
|
|
116
|
-
</Tabs>
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
sidebar_position: 8
|
|
3
|
-
title: Provider
|
|
4
|
-
---
|
|
5
|
-
# Provider
|
|
6
|
-
|
|
7
|
-
import ReduckTip from "@site-docs-en/components/reduck-tip"
|
|
8
|
-
|
|
9
|
-
<ReduckTip />
|
|
10
|
-
|
|
11
|
-
`Provider` is a component that injects Reduck's Store into the application's component tree, making the Model accessible to components inside the component tree. Normally, `Provider` is defined at the top level of the component tree.
|
|
12
|
-
|
|
13
|
-
## Function Signature
|
|
14
|
-
|
|
15
|
-
```ts
|
|
16
|
-
interface ProviderProps {
|
|
17
|
-
store?: ReduckStore;
|
|
18
|
-
config?: AppConfig;
|
|
19
|
-
}
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
### Input
|
|
23
|
-
|
|
24
|
-
- store: the Store object created by [`createStore`](./create-store.mdx).
|
|
25
|
-
- config: this config to create Reduck Store, same as `config` param in [`createApp`](./create-app.mdx).
|
|
26
|
-
|
|
27
|
-
## Example
|
|
28
|
-
|
|
29
|
-
```tsx title="App entry file"
|
|
30
|
-
ReactDOM.render(
|
|
31
|
-
<Provider>
|
|
32
|
-
<App />
|
|
33
|
-
</Provider>,
|
|
34
|
-
document.getElementById('root'),
|
|
35
|
-
);
|
|
36
|
-
```
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
sidebar_position: 6
|
|
3
|
-
title: Auto actions
|
|
4
|
-
---
|
|
5
|
-
# Auto actions
|
|
6
|
-
|
|
7
|
-
import ReduckTip from "@site-docs-en/components/reduck-tip"
|
|
8
|
-
|
|
9
|
-
<ReduckTip />
|
|
10
|
-
|
|
11
|
-
Reduck can automatically generate Actions according to the type of State, for easy to modify State.
|
|
12
|
-
|
|
13
|
-
:::tip
|
|
14
|
-
can use [`runtime.state.autoActions`](/configure/app/runtime/state#autoactions) close auto actions feature.
|
|
15
|
-
|
|
16
|
-
:::
|
|
17
|
-
|
|
18
|
-
## Example
|
|
19
|
-
|
|
20
|
-
### Basic Data Type
|
|
21
|
-
|
|
22
|
-
State type in `string`、`number`、`boolean`、`null`, generate `setState` Action.
|
|
23
|
-
|
|
24
|
-
```tsx title="example"
|
|
25
|
-
const fooModel = model('foo').define({
|
|
26
|
-
state: 1,
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
function App() {
|
|
30
|
-
const [state, actions] = useModel(fooModel);
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<div>
|
|
34
|
-
<div>State: {state}</div>
|
|
35
|
-
<button
|
|
36
|
-
type="button"
|
|
37
|
-
onClick={() => {
|
|
38
|
-
// call auto generate setState Action
|
|
39
|
-
actions.setState(state + 1);
|
|
40
|
-
}}
|
|
41
|
-
>
|
|
42
|
-
add
|
|
43
|
-
</button>
|
|
44
|
-
</div>
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### Array
|
|
50
|
-
|
|
51
|
-
State type is Array, generate the following Actions:
|
|
52
|
-
|
|
53
|
-
- `push`: adds one or more elements to the end of the array.
|
|
54
|
-
- `pop`: removes the last element from the array.
|
|
55
|
-
- `shift`: removes the first element from the array.
|
|
56
|
-
- `unshift`: adds one or more elements to the beginning of the array.
|
|
57
|
-
- usage: `arr.unshift(element1, ..., elementN)`
|
|
58
|
-
- `elementN`: the element or elements to add to the beginning of the array.
|
|
59
|
-
- `filter`: filter element.
|
|
60
|
-
{/* Semantics are different from native methods, API to be modified */}
|
|
61
|
-
- `concat`: concat array.
|
|
62
|
-
{/* Semantics are different from native methods, API to be modified */}
|
|
63
|
-
- `splice`: modify the array by deleting or replacing existing elements or adding new elements in place, and return the modified array(Note that it is different from the native `splice` return value).
|
|
64
|
-
- usage: `splice(start[, deleteCount[, item1[, item2[, ...]]]])`
|
|
65
|
-
- `start`: specifies the start position of the modification(counting from 0).
|
|
66
|
-
- `deleteCount`: an integer representing the number of array elements to remove.
|
|
67
|
-
- `item, item2, ...`: The elements to add to the array, starting at the start position. If not specified, `splice` will only delete array elements.
|
|
68
|
-
|
|
69
|
-
```tsx title="example"
|
|
70
|
-
const fooModel = model('foo').define({
|
|
71
|
-
state: [1, 2, 3],
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
function App() {
|
|
75
|
-
const [state, actions] = useModel(fooModel);
|
|
76
|
-
|
|
77
|
-
useEffect(() => {
|
|
78
|
-
actions.push(4);
|
|
79
|
-
actions.pop();
|
|
80
|
-
actions.shift(0);
|
|
81
|
-
actions.unshift();
|
|
82
|
-
actions.filter(val => val <= 2);
|
|
83
|
-
actions.splice(0, 1, 1, 2);
|
|
84
|
-
}, []);
|
|
85
|
-
|
|
86
|
-
return (
|
|
87
|
-
<div>
|
|
88
|
-
<div>State: {state}</div>
|
|
89
|
-
</div>
|
|
90
|
-
);
|
|
91
|
-
}
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### PlainObject
|
|
95
|
-
|
|
96
|
-
State type is PlainObject, base on the names contained in State, generate `set${key}`(Camel-Case) Actions.
|
|
97
|
-
|
|
98
|
-
```tsx title="example"
|
|
99
|
-
const fooModel = model('foo').define({
|
|
100
|
-
state: {
|
|
101
|
-
a: 1,
|
|
102
|
-
b: { value: 1 },
|
|
103
|
-
c: 'c',
|
|
104
|
-
},
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
function App() {
|
|
108
|
-
const [state, actions] = useModel(fooModel);
|
|
109
|
-
|
|
110
|
-
useEffect(() => {
|
|
111
|
-
actions.setA(2);
|
|
112
|
-
actions.setB({ value: 2 });
|
|
113
|
-
actions.setC('d');
|
|
114
|
-
}, []);
|
|
115
|
-
|
|
116
|
-
return (
|
|
117
|
-
<div>
|
|
118
|
-
<div>State: {state}</div>
|
|
119
|
-
</div>
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
```
|