@modern-js/main-doc 2.69.7 → 3.0.0-alpha.1
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 +8 -33
- 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 +19 -17
- package/docs/en/components/build-output.mdx +45 -0
- package/docs/en/components/bundler.mdx +1 -1
- 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 +42 -8
- package/docs/en/components/enable-ssg.mdx +49 -0
- package/docs/en/components/entry-scan-logic.mdx +7 -0
- package/docs/en/components/esbuild.mdx +2 -2
- package/docs/en/components/extend-bff-function.mdx +2 -4
- package/docs/en/components/hono.mdx +119 -0
- package/docs/en/components/init-app.mdx +40 -17
- package/docs/en/components/international/custom-instance-code.mdx +16 -0
- package/docs/en/components/international/init-options-desc.mdx +1 -0
- package/docs/en/components/international/install-command.mdx +23 -0
- package/docs/en/components/international/instance-code.mdx +26 -0
- package/docs/en/components/international/introduce.mdx +2 -0
- package/docs/en/components/module-federation.mdx +4 -4
- 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-config-deploy.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/builder-plugins.mdx +1 -2
- package/docs/en/configure/app/dev/lazy-compilation.mdx +45 -0
- package/docs/en/configure/app/dev/server.mdx +211 -0
- package/docs/en/configure/app/dev/setup-middlewares.mdx +4 -22
- package/docs/en/configure/app/experiments/source-build.mdx +0 -1
- package/docs/en/configure/app/html/app-icon.mdx +1 -23
- package/docs/en/configure/app/output/assets-retry.mdx +1 -1
- package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +2 -2
- package/docs/en/configure/app/output/filename.mdx +2 -4
- 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/output/temp-dir.mdx +3 -3
- package/docs/en/configure/app/performance/build-cache.mdx +1 -5
- package/docs/en/configure/app/performance/profile.mdx +1 -1
- package/docs/en/configure/app/plugins.mdx +1 -3
- 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/runtime/router.mdx +0 -4
- package/docs/en/configure/app/security/check-syntax.mdx +1 -1
- package/docs/en/configure/app/security/sri.mdx +0 -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/alias.mdx +1 -1
- package/docs/en/configure/app/source/decorators.mdx +4 -2
- package/docs/en/configure/app/source/enable-async-entry.mdx +1 -1
- package/docs/en/configure/app/source/entries.mdx +0 -2
- package/docs/en/configure/app/source/include.mdx +2 -14
- 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 +22 -256
- 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 +5 -27
- package/docs/en/guides/_meta.json +5 -1
- package/docs/en/guides/advanced-features/_meta.json +6 -0
- package/docs/en/guides/advanced-features/bff/_meta.json +9 -1
- package/docs/en/guides/advanced-features/bff/cross-project.mdx +2 -8
- package/docs/en/guides/advanced-features/bff/extend-server.mdx +18 -3
- package/docs/en/guides/advanced-features/bff/frameworks.mdx +2 -15
- package/docs/en/guides/advanced-features/bff/function.mdx +6 -10
- package/docs/en/guides/advanced-features/bff/operators.mdx +628 -0
- package/docs/en/guides/advanced-features/bff/sdk.mdx +20 -12
- package/docs/en/guides/advanced-features/bff/upload.mdx +3 -1
- 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 +428 -0
- package/docs/en/guides/advanced-features/international/locale-detection.mdx +276 -0
- package/docs/en/guides/advanced-features/international/quick-start.mdx +126 -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 +8 -22
- package/docs/en/guides/advanced-features/page-performance/react-compiler.mdx +19 -12
- package/docs/en/guides/advanced-features/rspack-start.mdx +3 -23
- package/docs/en/guides/advanced-features/server-monitor/logger.mdx +0 -4
- package/docs/en/guides/advanced-features/server-monitor/monitors.mdx +121 -36
- 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 +65 -77
- package/docs/en/guides/basic-features/data/data-fetch.mdx +19 -18
- 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 +6 -17
- 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 +399 -0
- package/docs/en/guides/basic-features/render/ssg.mdx +26 -67
- package/docs/en/guides/basic-features/render/ssr-cache.mdx +6 -10
- 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/svg-assets.mdx +0 -4
- package/docs/en/guides/basic-features/static-assets.mdx +2 -2
- package/docs/en/guides/concept/builder.mdx +27 -12
- 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 +4 -71
- package/docs/en/guides/get-started/tech-stack.mdx +7 -27
- 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/guides/upgrade/_meta.json +1 -0
- package/docs/en/guides/upgrade/config.mdx +936 -0
- package/docs/en/guides/upgrade/entry.mdx +463 -0
- package/docs/en/guides/upgrade/other.mdx +83 -0
- package/docs/en/guides/upgrade/overview.mdx +33 -0
- package/docs/en/guides/upgrade/tailwindcss.mdx +130 -0
- package/docs/en/guides/upgrade/web-server.mdx +91 -0
- package/docs/en/plugin/_meta.json +5 -0
- package/docs/en/plugin/cli-plugins/_meta.json +1 -1
- package/docs/en/plugin/cli-plugins/api.mdx +17 -68
- package/docs/en/plugin/cli-plugins/life-cycle.mdx +0 -4
- package/docs/en/plugin/introduction.mdx +44 -44
- 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 +69 -62
- package/docs/en/plugin/runtime-plugins/_meta.json +1 -1
- package/docs/en/plugin/runtime-plugins/api.mdx +62 -59
- package/docs/en/plugin/server-plugins/_meta.json +1 -0
- package/docs/en/plugin/server-plugins/api.mdx +210 -1
- package/docs/en/plugin/server-plugins/life-cycle.mdx +41 -1
- 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 +8 -33
- 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-operator-code.mdx +5 -0
- package/docs/zh/components/bff-upload.mdx +8 -7
- package/docs/zh/components/build-output.mdx +45 -0
- package/docs/zh/components/bundler.mdx +1 -1
- 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 +41 -8
- package/docs/zh/components/enable-ssg.mdx +49 -0
- package/docs/zh/components/entry-scan-logic.mdx +7 -0
- package/docs/zh/components/esbuild.mdx +2 -2
- package/docs/zh/components/extend-bff-function.mdx +2 -4
- package/docs/zh/components/hono.mdx +119 -0
- package/docs/zh/components/init-app.mdx +40 -18
- package/docs/zh/components/international/custom-instance-code.mdx +16 -0
- package/docs/zh/components/international/init-options-desc.mdx +1 -0
- package/docs/zh/components/international/install-command.mdx +23 -0
- package/docs/zh/components/international/instance-code.mdx +26 -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/components/upgrade-config-deploy.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/builder-plugins.mdx +1 -2
- package/docs/zh/configure/app/dev/lazy-compilation.mdx +44 -0
- package/docs/zh/configure/app/dev/server.mdx +211 -0
- package/docs/zh/configure/app/dev/setup-middlewares.mdx +4 -23
- package/docs/zh/configure/app/experiments/source-build.mdx +0 -1
- package/docs/zh/configure/app/html/app-icon.mdx +1 -23
- package/docs/zh/configure/app/output/assets-retry.mdx +1 -1
- package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +2 -2
- package/docs/zh/configure/app/output/filename.mdx +2 -4
- 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/output/temp-dir.mdx +3 -3
- package/docs/zh/configure/app/performance/build-cache.mdx +1 -5
- package/docs/zh/configure/app/performance/profile.mdx +1 -1
- package/docs/zh/configure/app/plugins.mdx +1 -2
- 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/runtime/router.mdx +0 -4
- package/docs/zh/configure/app/security/check-syntax.mdx +1 -1
- package/docs/zh/configure/app/security/sri.mdx +0 -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/alias.mdx +1 -1
- package/docs/zh/configure/app/source/decorators.mdx +4 -4
- package/docs/zh/configure/app/source/enable-async-entry.mdx +1 -1
- package/docs/zh/configure/app/source/entries.mdx +0 -2
- package/docs/zh/configure/app/source/include.mdx +2 -16
- 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 +6 -28
- 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/_meta.json +9 -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 +2 -16
- package/docs/zh/guides/advanced-features/bff/function.mdx +7 -12
- package/docs/zh/guides/advanced-features/bff/operators.mdx +628 -0
- package/docs/zh/guides/advanced-features/bff/sdk.mdx +23 -16
- package/docs/zh/guides/advanced-features/bff/upload.mdx +3 -1
- 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 +432 -0
- package/docs/zh/guides/advanced-features/international/locale-detection.mdx +304 -0
- package/docs/zh/guides/advanced-features/international/quick-start.mdx +126 -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 +8 -22
- package/docs/zh/guides/advanced-features/page-performance/react-compiler.mdx +19 -12
- package/docs/zh/guides/advanced-features/server-monitor/logger.mdx +0 -4
- package/docs/zh/guides/advanced-features/server-monitor/monitors.mdx +120 -37
- 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 +55 -59
- package/docs/zh/guides/basic-features/data/data-fetch.mdx +14 -16
- 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 +4 -15
- 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 +399 -0
- package/docs/zh/guides/basic-features/render/ssg.mdx +27 -69
- package/docs/zh/guides/basic-features/render/ssr-cache.mdx +5 -9
- 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/svg-assets.mdx +0 -4
- 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 +26 -11
- 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 -28
- 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 -31
- package/docs/zh/guides/troubleshooting/builder.mdx +4 -85
- 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 +940 -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/_meta.json +5 -0
- package/docs/zh/plugin/cli-plugins/_meta.json +1 -1
- package/docs/zh/plugin/cli-plugins/api.mdx +19 -70
- package/docs/zh/plugin/cli-plugins/life-cycle.mdx +0 -4
- package/docs/zh/plugin/introduction.mdx +40 -40
- 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 +43 -51
- package/docs/zh/plugin/runtime-plugins/_meta.json +1 -1
- package/docs/zh/plugin/runtime-plugins/api.mdx +58 -56
- package/docs/zh/plugin/server-plugins/_meta.json +1 -0
- package/docs/zh/plugin/server-plugins/api.mdx +210 -1
- package/docs/zh/plugin/server-plugins/life-cycle.mdx +41 -1
- 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/FrameworkCode/index.tsx +605 -0
- 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/bundle-analyze.mdx +0 -24
- 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/babel.mdx +0 -225
- 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 -253
- package/docs/en/configure/app/tools/webpack.mdx +0 -309
- 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/cli-plugins/migration.mdx +0 -98
- 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/plugin/runtime-plugins/migration.mdx +0 -101
- 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/default-mwa-generate.mdx +0 -4
- 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/bundle-analyze.mdx +0 -24
- 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/babel.mdx +0 -224
- 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 -257
- package/docs/zh/configure/app/tools/webpack.mdx +0 -309
- 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/cli-plugins/migration.mdx +0 -98
- 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/plugin/runtime-plugins/migration.mdx +0 -101
- 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/en/components/{router-legacy-tip.mdx → international/platform-support.mdx} +0 -0
- /package/docs/{zh/components/reduck-migration.mdx → en/components/new-entry-tooltip.mdx} +0 -0
- /package/docs/{zh/components/router-legacy-tip.mdx → en/components/upgrade-browserslist.mdx} +0 -0
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"activeMatch": "/apis/"
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
|
-
"text": "
|
|
23
|
+
"text": "Examples",
|
|
24
24
|
"link": "/tutorials/foundations/introduction",
|
|
25
25
|
"activeMatch": "/tutorials/"
|
|
26
26
|
},
|
|
@@ -28,5 +28,9 @@
|
|
|
28
28
|
"text": "community",
|
|
29
29
|
"link": "/community/showcase",
|
|
30
30
|
"activeMatch": "/community/"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"text": "Modern.js 2.x Docs",
|
|
34
|
+
"link": "https://modernjs.dev/guides/get-started/introduction.html"
|
|
31
35
|
}
|
|
32
36
|
]
|
|
@@ -19,7 +19,6 @@ Options:
|
|
|
19
19
|
-e --entry <entry> compiler by entry
|
|
20
20
|
-c --config <config> specify the configuration file, which can be a relative or absolute path
|
|
21
21
|
-h, --help show command help
|
|
22
|
-
--analyze analyze the bundle and view size of each module
|
|
23
22
|
--web-only only start web service
|
|
24
23
|
--api-only only start API service
|
|
25
24
|
```
|
|
@@ -79,36 +78,13 @@ Options:
|
|
|
79
78
|
-c --config <config> specify the configuration file, which can be a relative or absolute path
|
|
80
79
|
-h, --help show command help
|
|
81
80
|
-w --watch turn on watch mode, watch for changes and rebuild
|
|
82
|
-
--analyze analyze the bundle and view size of each module
|
|
83
81
|
```
|
|
84
82
|
|
|
85
|
-
### Analyze Bundle
|
|
86
|
-
|
|
87
|
-
execute `npx modern build --analyze` command, can produce an HTML file that analyzes the volume of the bundle while packaging the production code:
|
|
88
|
-
|
|
89
|
-
```text
|
|
90
|
-
Bundle Analyzer saved report to /example/dist/report.html
|
|
91
|
-
|
|
92
|
-
info Production file sizes:
|
|
93
|
-
|
|
94
|
-
File Size Gzipped
|
|
95
|
-
dist/static/js/lib-react.09721b5c.js 152.6 kB 49.0 kB
|
|
96
|
-
dist/html/main/index.html 5.8 kB 2.5 kB
|
|
97
|
-
dist/static/js/main.3568a38e.js 3.5 kB 1.4 kB
|
|
98
|
-
dist/static/css/main.03221f72.css 1.4 kB 741 B
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
Open the above HTML file in the browser, you can see the tile diagram of the bundled files, and perform package volume analysis and optimization:
|
|
102
|
-
|
|
103
|
-
<img src="https://lf3-static.bytednsdoc.com/obj/eden-cn/aphqeh7uhohpquloj/modern-js/mwa-build-analyze-8784f762c1ab0cb20935829d5f912c4c.png" />
|
|
104
|
-
|
|
105
|
-
> this features based on [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer).
|
|
106
|
-
|
|
107
83
|
## modern new
|
|
108
84
|
|
|
109
85
|
The `modern new` command is used to enable features in an existing project.
|
|
110
86
|
|
|
111
|
-
For example, add application entry, enable some optional features such as
|
|
87
|
+
For example, add application entry, enable some optional features such as BFF, micro frontend, etc.
|
|
112
88
|
|
|
113
89
|
```bash
|
|
114
90
|
Usage: modern new [options]
|
|
@@ -142,8 +118,7 @@ In the project, execute the `new` command to enable features as follows:
|
|
|
142
118
|
$ npx modern new
|
|
143
119
|
? Please select the operation you want: Enable Features
|
|
144
120
|
? Please select the feature name: (Use arrow keys)
|
|
145
|
-
❯ Enable
|
|
146
|
-
Enable BFF
|
|
121
|
+
❯ Enable BFF
|
|
147
122
|
Enable SSG
|
|
148
123
|
Enable Micro Frontend
|
|
149
124
|
```
|
|
@@ -175,7 +150,7 @@ Options:
|
|
|
175
150
|
|
|
176
151
|
## modern inspect
|
|
177
152
|
|
|
178
|
-
The `modern inspect` command is used to view the Modern.js config, [Rsbuild config](https://rsbuild.rs/config/index) and
|
|
153
|
+
The `modern inspect` command is used to view the Modern.js config, [Rsbuild config](https://rsbuild.rs/config/index) and Rspack config of the project.
|
|
179
154
|
|
|
180
155
|
```bash
|
|
181
156
|
Usage: modern inspect [options]
|
|
@@ -192,7 +167,7 @@ After executing the command `npx modern inspect` in the project root directory,
|
|
|
192
167
|
|
|
193
168
|
- `modern.js.config.mjs`:The Modern.js configuration currently used.
|
|
194
169
|
- `rsbuild.config.mjs`: The Rsbuild config to use at build time.
|
|
195
|
-
- `
|
|
170
|
+
- `rspack.config.web.mjs`: The Rspack config used by to use at build time.
|
|
196
171
|
|
|
197
172
|
```bash
|
|
198
173
|
➜ npx modern inspect
|
|
@@ -200,7 +175,7 @@ After executing the command `npx modern inspect` in the project root directory,
|
|
|
200
175
|
Inspect config succeed, open following files to view the content:
|
|
201
176
|
|
|
202
177
|
- Rsbuild Config: /root/my-project/dist/rsbuild.config.mjs
|
|
203
|
-
-
|
|
178
|
+
- Rspack Config (web): /root/my-project/dist/rspack.config.web.mjs
|
|
204
179
|
- Modern.js Config: /root/my-project/dist/modern.js.config.mjs
|
|
205
180
|
```
|
|
206
181
|
|
|
@@ -222,7 +197,7 @@ modern inspect --verbose
|
|
|
222
197
|
|
|
223
198
|
### SSR Configuration
|
|
224
199
|
|
|
225
|
-
If the project has enabled SSR, an additional `
|
|
200
|
+
If the project has enabled SSR, an additional `rspack.config.node.mjs` file will be generated in the `dist/`, corresponding to the Rspack configuration at SSR build time.
|
|
226
201
|
|
|
227
202
|
```bash
|
|
228
203
|
➜ npx modern inspect
|
|
@@ -230,8 +205,8 @@ If the project has enabled SSR, an additional `webpack.config.node.mjs` file wil
|
|
|
230
205
|
Inspect config succeed, open following files to view the content:
|
|
231
206
|
|
|
232
207
|
- Rsbuild Config: /root/my-project/dist/rsbuild.config.mjs
|
|
233
|
-
-
|
|
234
|
-
-
|
|
208
|
+
- Rspack Config (web): /root/my-project/dist/rspack.config.web.mjs
|
|
209
|
+
- Rspack Config (node): /root/my-project/dist/rspack.config.node.mjs
|
|
235
210
|
- Modern.js Config: /root/my-project/dist/modern.js.config.mjs
|
|
236
211
|
```
|
|
237
212
|
|
|
@@ -5,10 +5,6 @@ sidebar_position: 4
|
|
|
5
5
|
|
|
6
6
|
# entry.[tj]sx
|
|
7
7
|
|
|
8
|
-
:::info
|
|
9
|
-
Using this file requires enabling [source.enableCustomEntry](/configure/app/source/enable-custom-entry).
|
|
10
|
-
:::
|
|
11
|
-
|
|
12
8
|
Normally, the [`routes/`](/apis/app/hooks/src/routes.html) and [`App.[tj]sx`](/apis/app/hooks/src/app) hook files can meet our needs. When we need to add custom behavior before component rendering or take full control of the webpack packaging entry, we can create `entry.[tj]s` file in the src or entry directory. Here are two cases for discussion。
|
|
13
9
|
|
|
14
10
|
## Add custom behavior before Render
|
|
@@ -22,7 +18,7 @@ import { render } from '@modern-js/runtime/browser';
|
|
|
22
18
|
const ModernRoot = createRoot();
|
|
23
19
|
|
|
24
20
|
async function beforeRender() {
|
|
25
|
-
|
|
21
|
+
// todo
|
|
26
22
|
}
|
|
27
23
|
|
|
28
24
|
beforeRender().then(() => {
|
|
@@ -5,10 +5,6 @@ sidebar_position: 5
|
|
|
5
5
|
|
|
6
6
|
# entry.server.[tj]sx
|
|
7
7
|
|
|
8
|
-
:::info
|
|
9
|
-
Using this file requires enabling [source.enableCustomEntry](/configure/app/source/enable-custom-entry).
|
|
10
|
-
:::
|
|
11
|
-
|
|
12
8
|
When the project initiates `server.ssr`, Modern.js generates a default Server-Side entry. The sample code is as follows:
|
|
13
9
|
|
|
14
10
|
```tsx title="entry.server.tsx"
|
|
@@ -35,7 +31,10 @@ export default createRequestHandler(handleRequest);
|
|
|
35
31
|
Users need to customize the Server-Side Rendering entry points, they can customize the server entry in `src/entry.server.ts` or `src/{entryName}/entry.server.ts`.
|
|
36
32
|
|
|
37
33
|
```tsx title="src/entry.server.tsx"
|
|
38
|
-
import {
|
|
34
|
+
import {
|
|
35
|
+
renderString,
|
|
36
|
+
createRequestHandler,
|
|
37
|
+
} from '@modern-js/runtime/ssr/server';
|
|
39
38
|
import type { HandleRequest } from '@modern-js/runtime/ssr/server';
|
|
40
39
|
|
|
41
40
|
const handleRequest: HandleRequest = async (request, ServerRoot, options) => {
|
|
@@ -4,7 +4,7 @@ sidebar_position: 2
|
|
|
4
4
|
---
|
|
5
5
|
# routes/
|
|
6
6
|
|
|
7
|
-
The identifier for the entry point when the application uses [Conventional Routing](guides/basic-features/routes
|
|
7
|
+
The identifier for the entry point when the application uses [Conventional Routing](/guides/basic-features/routes/routes#conventional-routing).
|
|
8
8
|
|
|
9
9
|
Conventional routing uses `routes/` as the convention for the entry point and analyzes the files in the `src/routes` directory to obtain the client-side routing configuration.
|
|
10
10
|
|
|
@@ -85,6 +85,6 @@ export default () => {
|
|
|
85
85
|
```
|
|
86
86
|
|
|
87
87
|
:::note
|
|
88
|
-
`<Outlet>` is a new API in React Router
|
|
88
|
+
`<Outlet>` is a new API in React Router 7. For details, see [Outlet](https://reactrouter.com/en/main/components/outlet#outlet).
|
|
89
89
|
|
|
90
90
|
:::
|
|
@@ -5,24 +5,12 @@
|
|
|
5
5
|
"label": "Core",
|
|
6
6
|
"collapsed": true
|
|
7
7
|
},
|
|
8
|
-
{
|
|
9
|
-
"type": "dir",
|
|
10
|
-
"name": "app",
|
|
11
|
-
"label": "App",
|
|
12
|
-
"collapsed": true
|
|
13
|
-
},
|
|
14
8
|
{
|
|
15
9
|
"type": "dir",
|
|
16
10
|
"name": "router",
|
|
17
11
|
"label": "Router",
|
|
18
12
|
"collapsed": true
|
|
19
13
|
},
|
|
20
|
-
{
|
|
21
|
-
"type": "dir",
|
|
22
|
-
"name": "model",
|
|
23
|
-
"label": "Model",
|
|
24
|
-
"collapsed": true
|
|
25
|
-
},
|
|
26
14
|
{
|
|
27
15
|
"type": "dir",
|
|
28
16
|
"name": "ssr",
|
|
@@ -35,12 +23,6 @@
|
|
|
35
23
|
"label": "BFF",
|
|
36
24
|
"collapsed": true
|
|
37
25
|
},
|
|
38
|
-
{
|
|
39
|
-
"type": "dir",
|
|
40
|
-
"name": "web-server",
|
|
41
|
-
"label": "Web Server",
|
|
42
|
-
"collapsed": true
|
|
43
|
-
},
|
|
44
26
|
{
|
|
45
27
|
"type": "dir",
|
|
46
28
|
"name": "utility",
|
|
@@ -8,7 +8,7 @@ Used to obtain Hono context in an integrated BFF function.
|
|
|
8
8
|
## Usage
|
|
9
9
|
|
|
10
10
|
```ts
|
|
11
|
-
import { useHonoContext } from '@modern-js/plugin-bff/
|
|
11
|
+
import { useHonoContext } from '@modern-js/plugin-bff/server';
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## Function Signature
|
|
@@ -20,7 +20,7 @@ import { useHonoContext } from '@modern-js/plugin-bff/hono';
|
|
|
20
20
|
Developers can use `context` to obtain more request information, such as setting response headers:
|
|
21
21
|
|
|
22
22
|
```ts
|
|
23
|
-
import { useHonoContext } from '@modern-js/plugin-bff/
|
|
23
|
+
import { useHonoContext } from '@modern-js/plugin-bff/server';
|
|
24
24
|
|
|
25
25
|
export async function get() {
|
|
26
26
|
const c = useHonoContext();
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: CSS-In-JS API
|
|
3
3
|
---
|
|
4
|
+
|
|
4
5
|
# CSS-In-JS API
|
|
5
6
|
|
|
6
7
|
Use Style Component to write CSS.
|
|
@@ -8,7 +9,7 @@ Use Style Component to write CSS.
|
|
|
8
9
|
## Usage
|
|
9
10
|
|
|
10
11
|
```ts
|
|
11
|
-
import styled from '@modern-js/
|
|
12
|
+
import styled from '@modern-js/plugin-styled-components/styled';
|
|
12
13
|
```
|
|
13
14
|
|
|
14
15
|
## Function Signature
|
|
@@ -18,7 +19,7 @@ see [styled-component API](https://styled-components.com/docs/api).
|
|
|
18
19
|
## Example
|
|
19
20
|
|
|
20
21
|
```tsx
|
|
21
|
-
import styled from '@modern-js/
|
|
22
|
+
import styled from '@modern-js/plugin-styled-components/styled';
|
|
22
23
|
|
|
23
24
|
const Button = styled.button`
|
|
24
25
|
background: palevioletred;
|
|
@@ -232,8 +232,6 @@ Modern.js 中的部分代码实现参考了社区中的开源项目,我们对
|
|
|
232
232
|
|
|
233
233
|
- `@modern-js/bundle-require`: 修改自 [bundle-require](https://github.com/egoist/bundle-require)。
|
|
234
234
|
- `@modern-js/plugin`: hook API 的实现参考了 [farrow-pipeline](https://github.com/farrow-js/farrow/tree/master/packages/farrow-pipeline)。
|
|
235
|
-
- `@modern-js/builder`: moduleScope 和 fileSize 插件参考了 [create-react-app](https://github.com/facebook/create-react-app),TsConfigPathsPlugin 参考了 [tsconfig-paths-webpack-plugin](https://github.com/dividab/tsconfig-paths-webpack-plugin),generateMetaTags 函数参考了 [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin)。
|
|
236
|
-
- `@modern-js/plugin-testing`: jest runner 参考了 [jest-cli](https://github.com/facebook/jest/blob/fdc74af37235354e077edeeee8aa2d1a4a863032/packages/jest-cli/src/cli/index.ts#L21)。
|
|
237
235
|
- `@modern-js/plugin-data-loader`: 部分实现参考了 [remix](https://github.com/remix-run/remix)。
|
|
238
236
|
|
|
239
237
|
## 最后
|
|
@@ -15,7 +15,7 @@ own GitHub account and then [clone](https://help.github.com/articles/cloning-a-r
|
|
|
15
15
|
|
|
16
16
|
### Install Node.js
|
|
17
17
|
|
|
18
|
-
We recommend using Node.js
|
|
18
|
+
We recommend using Node.js 22. You can check your currently used Node.js version with the following command:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
21
|
node -v
|
|
@@ -23,17 +23,17 @@ node -v
|
|
|
23
23
|
|
|
24
24
|
If you do not have Node.js installed in your current environment, you can use [nvm](https://github.com/nvm-sh/nvm) or [fnm](https://github.com/Schniz/fnm) to install it.
|
|
25
25
|
|
|
26
|
-
Here is an example of how to install the Node.js
|
|
26
|
+
Here is an example of how to install the Node.js 22 LTS version via nvm:
|
|
27
27
|
|
|
28
28
|
```bash
|
|
29
|
-
# Install the LTS version of Node.js
|
|
30
|
-
nvm install
|
|
29
|
+
# Install the LTS version of Node.js 22
|
|
30
|
+
nvm install 22 --lts
|
|
31
31
|
|
|
32
|
-
# Make the newly installed Node.js
|
|
33
|
-
nvm alias default
|
|
32
|
+
# Make the newly installed Node.js 22 as the default version
|
|
33
|
+
nvm alias default 22
|
|
34
34
|
|
|
35
|
-
# Switch to the newly installed Node.js
|
|
36
|
-
nvm use
|
|
35
|
+
# Switch to the newly installed Node.js 22
|
|
36
|
+
nvm use 22
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
### Install pnpm
|
|
@@ -125,7 +125,7 @@ pnpm run reset
|
|
|
125
125
|
|
|
126
126
|
If you've fixed a bug or added code that should be tested, then add some tests.
|
|
127
127
|
|
|
128
|
-
You can add unit test cases in the `<PACKAGE_DIR>/tests` folder. The test syntax is based on [Jest](https://jestjs.io/) and [
|
|
128
|
+
You can add unit test cases in the `<PACKAGE_DIR>/tests` folder. The test syntax is based on [Jest](https://jestjs.io/) and [Rstest](https://rstest.rs/).
|
|
129
129
|
|
|
130
130
|
### Run Unit Tests
|
|
131
131
|
|
|
@@ -185,9 +185,7 @@ You can find all the documentation in the `packages/document` folder:
|
|
|
185
185
|
```bash
|
|
186
186
|
root
|
|
187
187
|
└─ packages
|
|
188
|
-
└─ document
|
|
189
|
-
├─ main-doc # Documentation for Modern.js Framework
|
|
190
|
-
└─ module-doc # Documentation for Modern.js Module
|
|
188
|
+
└─ document # Documentation for Modern.js Framework
|
|
191
189
|
```
|
|
192
190
|
|
|
193
191
|
This website is built with Rspress, the document content can be written using markdown or mdx syntax. You can refer to the [Rspress Website](https://rspress.rs/) for detailed usage.
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
BFF combined with runtime framework provides file upload capabilities, supporting integrated calls and pure function manual calls.
|
|
2
|
-
|
|
3
1
|
### BFF Function
|
|
4
2
|
|
|
5
3
|
First, create the `api/lambda/upload.ts` file:
|
|
6
4
|
|
|
7
5
|
```ts title="api/lambda/upload.ts"
|
|
8
|
-
export const post = async ({ formData }: {formData: Record<string, any>}) => {
|
|
6
|
+
export const post = async ({ formData }: { formData: Record<string, any> }) => {
|
|
9
7
|
console.info('formData:', formData);
|
|
10
8
|
// do somethings
|
|
11
9
|
return {
|
|
@@ -15,17 +13,18 @@ export const post = async ({ formData }: {formData: Record<string, any>}) => {
|
|
|
15
13
|
};
|
|
16
14
|
};
|
|
17
15
|
```
|
|
16
|
+
|
|
18
17
|
:::tip
|
|
19
18
|
The `formData` parameter in the interface processing function can access files uploaded from the client side. It is an `Object` where the keys correspond to the field names used during the upload.
|
|
20
19
|
:::
|
|
21
20
|
|
|
22
|
-
|
|
23
21
|
### Integrated Calling
|
|
24
22
|
|
|
25
23
|
Next, directly import and call the function in `src/routes/upload/page.tsx`:
|
|
24
|
+
|
|
26
25
|
```tsx title="routes/upload/page.tsx"
|
|
27
|
-
import {
|
|
28
|
-
import React from 'react';
|
|
26
|
+
import { post } from '@api/upload';
|
|
27
|
+
import React, { type JSX } from 'react';
|
|
29
28
|
|
|
30
29
|
export default (): JSX.Element => {
|
|
31
30
|
const [file, setFile] = React.useState<FileList | null>();
|
|
@@ -34,31 +33,34 @@ export default (): JSX.Element => {
|
|
|
34
33
|
setFile(e.target.files);
|
|
35
34
|
};
|
|
36
35
|
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
const handleSubmit = async (e: React.MouseEvent<HTMLButtonElement>) => {
|
|
37
|
+
e.preventDefault();
|
|
38
|
+
const formData = new FormData();
|
|
39
|
+
if (file) {
|
|
40
|
+
for (let i = 0; i < file.length; i++) {
|
|
41
|
+
formData.append('images', file[i]);
|
|
42
|
+
}
|
|
43
|
+
post({
|
|
44
|
+
formData,
|
|
45
|
+
});
|
|
40
46
|
}
|
|
41
|
-
upload({
|
|
42
|
-
files: {
|
|
43
|
-
images: file,
|
|
44
|
-
},
|
|
45
|
-
});
|
|
46
47
|
};
|
|
47
48
|
|
|
48
49
|
return (
|
|
49
50
|
<div>
|
|
50
51
|
<input multiple type="file" onChange={handleChange} />
|
|
51
|
-
<button onClick={
|
|
52
|
+
<button onClick={handleSubmit}>upload</button>
|
|
52
53
|
</div>
|
|
53
54
|
);
|
|
54
55
|
};
|
|
55
56
|
```
|
|
57
|
+
|
|
56
58
|
:::tip
|
|
57
|
-
Note: The input type must be `{ formData: FormData }` for the upload to succeed.
|
|
59
|
+
Note: The input parameter type must be `{ formData: FormData }` for the upload to succeed.
|
|
58
60
|
:::
|
|
59
61
|
|
|
60
|
-
|
|
61
62
|
### Manual Calling
|
|
63
|
+
|
|
62
64
|
You can manually upload files using the `fetch API`, when calling `fetch`, set the `body` as `FormData` type and submit a post request.
|
|
63
65
|
|
|
64
66
|
```tsx title="routes/upload/page.tsx"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
To build the production artifacts of the project, run `pnpm run build` in the project:
|
|
2
|
+
|
|
3
|
+
```bash
|
|
4
|
+
$ pnpm run build
|
|
5
|
+
|
|
6
|
+
> modern build
|
|
7
|
+
|
|
8
|
+
Modern.js Framework
|
|
9
|
+
|
|
10
|
+
info Starting production build...
|
|
11
|
+
info Type checker is enabled. It may take some time.
|
|
12
|
+
ready Client compiled in 6.19 s
|
|
13
|
+
info Production file sizes:
|
|
14
|
+
|
|
15
|
+
File Size Gzipped
|
|
16
|
+
dist/routes-manifest.json 0.74 kB 0.28 kB
|
|
17
|
+
dist/static/css/async/page.d7915515.css 1.4 kB 0.69 kB
|
|
18
|
+
dist/static/js/main.5ae469e7.js 3.0 kB 1.3 kB
|
|
19
|
+
dist/html/index/index.html 6.0 kB 2.6 kB
|
|
20
|
+
dist/static/js/async/page.ddc8a4c1.js 19.2 kB 6.7 kB
|
|
21
|
+
dist/static/js/34.171fffdb.js 21.3 kB 7.1 kB
|
|
22
|
+
dist/static/js/lib-router.8995a55e.js 55.3 kB 18.1 kB
|
|
23
|
+
dist/static/js/lib-lodash.53ec3384.js 71.4 kB 24.8 kB
|
|
24
|
+
dist/static/js/lib-react.b5856db9.js 140.0 kB 45.2 kB
|
|
25
|
+
dist/static/js/lib-polyfill.86c452b3.js 213.3 kB 69.9 kB
|
|
26
|
+
|
|
27
|
+
Total size: 531.8 kB
|
|
28
|
+
Gzipped size: 176.7 kB
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
By default, the build artifacts are generated in `dist/`, with the following directory structure:
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
dist
|
|
35
|
+
├── html
|
|
36
|
+
│ └── index
|
|
37
|
+
├── modern.config.json
|
|
38
|
+
├── route.json
|
|
39
|
+
├── routes-manifest.json
|
|
40
|
+
└── static
|
|
41
|
+
├── css
|
|
42
|
+
└── js
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
> If you need to customize the directory of the build artifacts, please refer to [Output files](/guides/basic-features/output-files).
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
Refers to module bundlers such as [
|
|
1
|
+
Refers to module bundlers such as [Rspack](https://rspack.rs/).
|
|
2
2
|
|
|
3
3
|
The main goal of bundlers is to bundle JavaScript, CSS and other files together, and the bundled files can be used in the browser, Node.js or other environments. When bundler processes the Web application, it builds a dependency graph and then combines every module into one or more bundles.
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
:::
|
|
2
|
-
Please
|
|
1
|
+
:::tip
|
|
2
|
+
Please refer to the [Enable BFF](/en/guides/advanced-features/bff/function.html#enable-bff) section in Basic Usage to enable BFF functionality first.
|
|
3
3
|
:::
|
|
@@ -1,22 +1,56 @@
|
|
|
1
|
-
|
|
1
|
+
To enable BFF functionality in a Modern.js project, follow these steps to modify the code:
|
|
2
2
|
|
|
3
|
-
1.
|
|
3
|
+
1. Install BFF plugin dependencies
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
If the BFF plugin is not yet installed in your project, install it first:
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
```bash
|
|
8
|
+
pnpm add @modern-js/plugin-bff
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
:::tip Version Consistency
|
|
12
|
+
Make sure the version of `@modern-js/plugin-bff` matches the version of `@modern-js/app-tools` in your project. All Modern.js official packages are released with a uniform version number, and version mismatches may cause compatibility issues.
|
|
13
|
+
|
|
14
|
+
Check the version of `@modern-js/app-tools` first, then install the same version of `@modern-js/plugin-bff`:
|
|
8
15
|
|
|
9
16
|
```bash
|
|
10
|
-
|
|
11
|
-
|
|
17
|
+
# Check the current version of @modern-js/app-tools
|
|
18
|
+
pnpm list @modern-js/app-tools
|
|
19
|
+
|
|
20
|
+
# Install the same version of @modern-js/plugin-bff
|
|
21
|
+
pnpm add @modern-js/plugin-bff@<version>
|
|
12
22
|
```
|
|
13
23
|
|
|
14
|
-
|
|
24
|
+
:::
|
|
25
|
+
|
|
26
|
+
2. Configure `modern.config.ts`
|
|
27
|
+
|
|
28
|
+
Import and add the BFF plugin in the `modern.config.[tj]s` file:
|
|
15
29
|
|
|
16
30
|
```ts title="modern.config.ts"
|
|
31
|
+
import { defineConfig, appTools } from '@modern-js/app-tools';
|
|
17
32
|
import { bffPlugin } from '@modern-js/plugin-bff';
|
|
18
33
|
|
|
19
34
|
export default defineConfig({
|
|
20
|
-
plugins: [bffPlugin()],
|
|
35
|
+
plugins: [appTools(), bffPlugin()],
|
|
21
36
|
});
|
|
22
37
|
```
|
|
38
|
+
|
|
39
|
+
3. Configure TypeScript alias
|
|
40
|
+
|
|
41
|
+
To correctly recognize the `@api` alias in TypeScript, it is recommended to add path mapping in `tsconfig.json`:
|
|
42
|
+
|
|
43
|
+
```json title="tsconfig.json"
|
|
44
|
+
{
|
|
45
|
+
"compilerOptions": {
|
|
46
|
+
"paths": {
|
|
47
|
+
..., // other paths,
|
|
48
|
+
"@api/*": ["./api/lambda/*"]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"include": [
|
|
52
|
+
..., // other include directories
|
|
53
|
+
"api" // Add api directory
|
|
54
|
+
]
|
|
55
|
+
}
|
|
56
|
+
```
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
To enable SSG functionality in a Modern.js project, follow these steps to modify the code:
|
|
2
|
+
|
|
3
|
+
1. Install SSG plugin dependencies
|
|
4
|
+
|
|
5
|
+
If the SSG plugin is not yet installed in your project, install it first:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pnpm add @modern-js/plugin-ssg
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
:::tip Version Consistency
|
|
12
|
+
|
|
13
|
+
Make sure the version of `@modern-js/plugin-ssg` matches the version of `@modern-js/app-tools` in your project. All Modern.js official packages are released with a uniform version number, and version mismatches may cause compatibility issues.
|
|
14
|
+
|
|
15
|
+
Check the version of `@modern-js/app-tools` first, then install the same version of `@modern-js/plugin-ssg`:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Check the current version of @modern-js/app-tools
|
|
19
|
+
pnpm list @modern-js/app-tools
|
|
20
|
+
|
|
21
|
+
# Install the same version of @modern-js/plugin-ssg
|
|
22
|
+
pnpm add @modern-js/plugin-ssg@<version>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
:::
|
|
26
|
+
|
|
27
|
+
2. Configure modern.config.ts
|
|
28
|
+
|
|
29
|
+
Import and add the SSG plugin in the `modern.config.[tj]s` file, and configure `output.ssg`:
|
|
30
|
+
|
|
31
|
+
```ts title="modern.config.ts"
|
|
32
|
+
import { defineConfig, appTools } from '@modern-js/app-tools';
|
|
33
|
+
import { ssgPlugin } from '@modern-js/plugin-ssg';
|
|
34
|
+
|
|
35
|
+
export default defineConfig({
|
|
36
|
+
plugins: [appTools(), ssgPlugin()],
|
|
37
|
+
output: {
|
|
38
|
+
ssg: true,
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
:::info Scope of Application
|
|
44
|
+
|
|
45
|
+
- Use `output.ssg` for single-entry apps.
|
|
46
|
+
- Use `output.ssgByEntries` for multi-entry apps.
|
|
47
|
+
- When only `output.ssg: true` is set and `output.ssgByEntries` is not configured, all routes under all entries will be treated as SSG routes.
|
|
48
|
+
|
|
49
|
+
:::
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
:::tip Entry scanning logic
|
|
2
|
+
- If `src/` itself meets entry criteria → Single-entry application
|
|
3
|
+
- If `src/` does not meet criteria → Scan subdirectories under `src/` → Multi-entry application
|
|
4
|
+
- In single-entry applications, the default entry name is `index`
|
|
5
|
+
|
|
6
|
+
:::
|
|
7
|
+
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
[esbuild](https://esbuild.github.io/) is a front-end build tool based on Golang. It has the functions of bundling, compiling and minimizing JavaScript code. Compared with traditional tools, the performance is significantly improved. When minimizing code,
|
|
1
|
+
[esbuild](https://esbuild.github.io/) is a front-end build tool based on Golang. It has the functions of bundling, compiling and minimizing JavaScript code. Compared with traditional tools, the performance is significantly improved. When minimizing code, esbuild has dozens of times better performance.
|
|
2
2
|
|
|
3
|
-
Modern.js provides esbuild plugin that allow you to use esbuild instead of babel-loader, ts-loader
|
|
3
|
+
Modern.js provides esbuild plugin that allow you to use esbuild instead of babel-loader, ts-loader for transformation and minification process. When you enable esbuild in a large project, **it can greatly reduce the time required for code compilation and compression, while effectively avoiding OOM (heap out of memory) problems**.
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
The standard BFF function writing method may not always meet your needs.
|
|
1
|
+
The standard BFF function writing method may not always meet your needs. For example, complex TS type requirements in business scenarios. EdenX provides a more powerful BFF function writing method.
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
Coming soon
|
|
5
|
-
:::
|
|
3
|
+
For more details, please refer to - [Creating Extensible BFF Functions](/guides/advanced-features/bff/operators).
|