@modern-js/main-doc 2.0.2 → 2.1.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/.turbo/turbo-build.log +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/index.md +0 -5
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/lint.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/serve.md +2 -4
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/api/framework/lambda.md +12 -12
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/api/functions/api.md +13 -13
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/api/functions/app.md +0 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/api/functions/common.md +1 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/app.md +16 -9
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/index_.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/routes.md +5 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/server.md +6 -4
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/stories.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/hooks/src/test.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/app/define-config.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/bff/hook.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/core/bootstrap.md +3 -6
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/core/create-app.md +1 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/core/use-loader.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/core/use-module-apps.md +58 -51
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/core/use-runtime-context.md +3 -4
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/index.md +0 -5
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/Provider.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/connect.md +8 -5
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/create-store.md +1 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/handle-effect.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/model_.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-model.md +0 -3
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-store.md +0 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/router/router.md +23 -54
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/ssr/no-ssr.md +1 -8
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/ssr/pre-render.md +10 -6
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/testing/render.md +0 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/utility/css-in-js.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/utility/head.md +3 -5
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/utility/loadable.md +14 -15
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/web-server/hook.md +4 -5
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/web-server/middleware.md +7 -6
- package/en/docusaurus-plugin-content-docs/current/components/command-tip.md +3 -2
- package/en/docusaurus-plugin-content-docs/current/components/debug-app.md +17 -0
- package/en/docusaurus-plugin-content-docs/current/components/enable-bff.md +10 -14
- package/en/docusaurus-plugin-content-docs/current/components/enable-micro-frontend.md +4 -4
- package/en/docusaurus-plugin-content-docs/current/components/global-proxy-config.md +6 -9
- package/en/docusaurus-plugin-content-docs/current/components/global-proxy.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/components/micro-master-manifest-config.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/components/micro-runtime-config.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/components/prerequisites.md +19 -0
- package/en/docusaurus-plugin-content-docs/current/components/reduck-migration.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/components/reduck-tip.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/components/router-legacy-tip.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/configure/app/auto-load-plugin.md +8 -9
- package/en/docusaurus-plugin-content-docs/current/configure/app/bff/prefix.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/bff/proxy.md +8 -9
- package/en/docusaurus-plugin-content-docs/current/configure/app/builder-plugins.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/deploy/microFrontend.md +11 -13
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/asset-prefix.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/hmr.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/https.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/port.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/progress-bar.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/proxy.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/configure/app/dev/start-url.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/experiments/lazy-compilation.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/app-icon.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/crossorigin.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/disable-html-folder.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/favicon-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/favicon.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/inject-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/inject.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/meta-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/meta.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/mount-id.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/tags-by-entries.md +12 -0
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/tags.md +12 -0
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/template-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/template-parameters-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/template-parameters.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/template.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/title-by-entries.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/html/title.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/asset-prefix.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/assets-retry.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/charset.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/clean-dist-path.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/convert-to-rem.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/copy.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/css-module-local-ident-name.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/data-uri-limit.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-css-extract.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-css-module-extension.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-filename-hash.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-inline-runtime-chunk.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-minimize.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-node-polyfill.md +8 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-source-map.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-ts-checker.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/dist-path.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-asset-fallback.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-asset-manifest.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-css-module-tsdeclaration.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-inline-scripts.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-inline-styles.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/enable-latest-decorators.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/externals.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/filename.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/legal-comments.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/override-browserslist.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/polyfill.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/ssg.md +3 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/svg-default-export.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/build-cache.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/bundle-analyze.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/chunk-split.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/print-file-size.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/profile.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/remove-console.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/performance/remove-moment-locale.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/plugins.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/runtime/intro.md +11 -10
- package/en/docusaurus-plugin-content-docs/current/configure/app/runtime/master-app.md +1 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/runtime/router.md +7 -7
- package/en/docusaurus-plugin-content-docs/current/configure/app/runtime/state.md +15 -15
- package/en/docusaurus-plugin-content-docs/current/configure/app/security/sri.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/base-url.md +3 -4
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/enable-framework-ext.md +5 -4
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/port.md +24 -4
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/public-routes.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/routes.md +7 -7
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/ssr-by-entries.md +5 -5
- package/en/docusaurus-plugin-content-docs/current/configure/app/server/ssr.md +4 -4
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/alias.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/compile-js-data-uri.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/config-dir.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/define.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/design-system.md +656 -634
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/disable-default-entries.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/disable-entry-dirs.md +8 -8
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/enable-async-entry.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/entries-dir.md +7 -7
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/entries.md +4 -6
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/exclude.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/global-vars.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/include.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/module-scopes.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/pre-entry.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/resolve-extension-prefix.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/source/resolve-main-fields.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/autoprefixer.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/babel.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/css-extract.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/css-loader.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/dev-server.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/html-plugin.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/inspector.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/jest.md +9 -9
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/less.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/minify-css.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/postcss.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/pug.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/sass.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/style-loader.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/styled-components.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/swc.md +12 -1
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/terser.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/ts-checker.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/ts-loader.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/webpack-chain.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/configure/app/tools/webpack.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/bff/frameworks.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/bff/function.md +44 -38
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/bff/index.md +9 -9
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/bff/type.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/code-split.md +3 -4
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/compatibility.md +6 -7
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/eslint.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/index.md +0 -5
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/low-level.md +17 -19
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/ssg.md +8 -10
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/ssr.md +5 -11
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/testing.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/guides/advanced-features/web-server.md +3 -4
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/alias.md +7 -11
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/css/css-in-js.md +6 -6
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/css/css-modules.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/css/less-sass.md +1 -2
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/css/postcss.md +43 -47
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/css/tailwindcss.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/data-fetch.md +106 -192
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/env-vars.md +8 -8
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/html.md +55 -47
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/mock.md +4 -4
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/proxy.md +4 -5
- package/en/docusaurus-plugin-content-docs/current/guides/basic-features/routes.md +90 -9
- package/en/docusaurus-plugin-content-docs/current/guides/concept/entries.md +1 -2
- package/en/docusaurus-plugin-content-docs/current/guides/get-started/quick-start.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/guides/get-started/upgrade.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/extend.md +13 -13
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/hook-list.md +2 -2
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/hook.md +57 -54
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/implement.md +11 -11
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/lifecycle.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/framework-plugin/plugin-api.md +4 -4
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/app.md +33 -33
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/ejs.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/fs.md +3 -3
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/git.md +3 -2
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/handlebars.md +3 -4
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/json.md +9 -12
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/npm.md +2 -3
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/introduce.md +4 -3
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/run-in-js.md +4 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/structure.md +13 -11
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/common.md +18 -27
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/abstract.md +1 -4
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/introduce.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/updateJSONFile.md +4 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/hook/onForged.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/addInputAfter.md +1 -4
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/addInputBefore.md +1 -3
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/setInput.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/type.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/introduce.md +8 -9
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/develop.md +11 -12
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/use.md +8 -8
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/project.md +1 -2
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/micro-frontend/c01-introduction.md +7 -8
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/micro-frontend/c02-development.md +18 -21
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/micro-frontend/c03-main-app.md +41 -44
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/micro-frontend/c04-communicate.md +7 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/micro-frontend/c05-mixed-stack.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/auto-actions.md +0 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/computed-state.md +0 -2
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/define-model.md +3 -6
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/faq.md +2 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/manage-effects.md +2 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/model-communicate.md +1 -4
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/performance.md +1 -5
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/quick-start.md +0 -6
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/redux-integration.md +3 -2
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/test-model.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/typescript-best-practice.md +13 -14
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/use-model.md +14 -12
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/model/use-out-of-modernjs.md +4 -6
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c01-start.md +19 -19
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c02-component.md +11 -11
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c03-css.md +52 -55
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c04-routes.md +23 -23
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c05-loader.md +12 -11
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c06-model.md +28 -28
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c07-container.md +25 -26
- package/en/docusaurus-plugin-content-docs/current/tutorials/first-app/c08-entries.md +36 -38
- package/en/docusaurus-plugin-content-docs/current.json +3 -47
- package/package.json +3 -3
- package/scripts/config.ts +4 -2
- package/scripts/summary.en.json +1 -1
- package/scripts/summary.zh.json +1 -1
- package/scripts/sync.ts +1 -1
- package/zh/apis/app/commands/index.md +0 -5
- package/zh/apis/app/commands/lint.md +1 -1
- package/zh/apis/app/commands/serve.md +2 -4
- package/zh/apis/app/hooks/api/framework/lambda.md +12 -12
- package/zh/apis/app/hooks/api/functions/api.md +13 -13
- package/zh/apis/app/hooks/api/functions/app.md +0 -2
- package/zh/apis/app/hooks/api/functions/common.md +1 -1
- package/zh/apis/app/hooks/index.md +0 -5
- package/zh/apis/app/hooks/shared.md +0 -1
- package/zh/apis/app/hooks/src/app.md +16 -9
- package/zh/apis/app/hooks/src/index_.md +0 -2
- package/zh/apis/app/hooks/src/routes.md +6 -7
- package/zh/apis/app/hooks/src/server.md +6 -4
- package/zh/apis/app/hooks/src/stories.md +1 -1
- package/zh/apis/app/hooks/src/test.md +1 -1
- package/zh/apis/app/runtime/app/define-config.md +1 -2
- package/zh/apis/app/runtime/bff/hook.md +3 -3
- package/zh/apis/app/runtime/core/bootstrap.md +2 -3
- package/zh/apis/app/runtime/core/use-loader.md +2 -2
- package/zh/apis/app/runtime/core/use-module-apps.md +53 -50
- package/zh/apis/app/runtime/core/use-runtime-context.md +3 -4
- package/zh/apis/app/runtime/index.md +0 -5
- package/zh/apis/app/runtime/model/Provider.md +1 -0
- package/zh/apis/app/runtime/model/auto-actions.md +1 -1
- package/zh/apis/app/runtime/model/connect.md +9 -5
- package/zh/apis/app/runtime/model/create-app.md +3 -3
- package/zh/apis/app/runtime/model/create-store.md +2 -4
- package/zh/apis/app/runtime/model/handle-effect.md +3 -4
- package/zh/apis/app/runtime/model/model_.md +0 -3
- package/zh/apis/app/runtime/model/use-local-model.md +0 -1
- package/zh/apis/app/runtime/model/use-store.md +0 -2
- package/zh/apis/app/runtime/router/router.md +23 -53
- package/zh/apis/app/runtime/ssr/no-ssr.md +1 -5
- package/zh/apis/app/runtime/ssr/pre-render.md +10 -6
- package/zh/apis/app/runtime/testing/cleanup.md +2 -2
- package/zh/apis/app/runtime/testing/render.md +0 -2
- package/zh/apis/app/runtime/utility/css-in-js.md +2 -2
- package/zh/apis/app/runtime/utility/head.md +3 -5
- package/zh/apis/app/runtime/utility/loadable.md +14 -15
- package/zh/apis/app/runtime/web-server/hook.md +5 -4
- package/zh/apis/app/runtime/web-server/middleware.md +8 -6
- package/zh/apis/monorepo/commands/bump.md +1 -1
- package/zh/apis/monorepo/commands/change.md +3 -2
- package/zh/apis/monorepo/commands/gen-release-note.md +1 -2
- package/zh/apis/monorepo/commands/index.md +1 -6
- package/zh/apis/monorepo/commands/lint.md +1 -1
- package/zh/apis/monorepo/commands/release.md +0 -1
- package/zh/apis/monorepo/hooks/index.md +1 -6
- package/zh/components/command-tip.md +3 -2
- package/zh/components/enable-bff.md +10 -14
- package/zh/components/enable-micro-frontend.md +4 -4
- package/zh/components/global-proxy-config.md +6 -9
- package/zh/components/global-proxy.md +0 -1
- package/zh/components/init-app.md +0 -1
- package/zh/components/micro-master-manifest-config.md +2 -2
- package/zh/components/micro-runtime-config.md +1 -1
- package/zh/components/reduck-migration.md +0 -1
- package/zh/components/router-legacy-tip.md +0 -1
- package/zh/configure/app/auto-load-plugin.md +9 -10
- package/zh/configure/app/bff/prefix.md +6 -10
- package/zh/configure/app/bff/proxy.md +9 -8
- package/zh/configure/app/builder-plugins.md +6 -6
- package/zh/configure/app/deploy/microFrontend.md +11 -11
- package/zh/configure/app/dev/asset-prefix.md +2 -2
- package/zh/configure/app/dev/hmr.md +2 -2
- package/zh/configure/app/dev/https.md +2 -2
- package/zh/configure/app/dev/port.md +2 -2
- package/zh/configure/app/dev/progress-bar.md +2 -2
- package/zh/configure/app/dev/proxy.md +0 -1
- package/zh/configure/app/dev/start-url.md +2 -2
- package/zh/configure/app/experiments/lazy-compilation.md +2 -2
- package/zh/configure/app/html/app-icon.md +2 -2
- package/zh/configure/app/html/crossorigin.md +2 -2
- package/zh/configure/app/html/disable-html-folder.md +2 -2
- package/zh/configure/app/html/favicon-by-entries.md +2 -2
- package/zh/configure/app/html/favicon.md +2 -2
- package/zh/configure/app/html/inject-by-entries.md +2 -2
- package/zh/configure/app/html/inject.md +2 -2
- package/zh/configure/app/html/meta-by-entries.md +2 -2
- package/zh/configure/app/html/meta.md +2 -2
- package/zh/configure/app/html/mount-id.md +2 -2
- package/zh/configure/app/html/tags-by-entries.md +12 -0
- package/zh/configure/app/html/tags.md +12 -0
- package/zh/configure/app/html/template-by-entries.md +2 -2
- package/zh/configure/app/html/template-parameters-by-entries.md +2 -2
- package/zh/configure/app/html/template-parameters.md +2 -2
- package/zh/configure/app/html/template.md +2 -2
- package/zh/configure/app/html/title-by-entries.md +2 -2
- package/zh/configure/app/html/title.md +2 -2
- package/zh/configure/app/output/asset-prefix.md +2 -2
- package/zh/configure/app/output/assets-retry.md +2 -2
- package/zh/configure/app/output/charset.md +2 -2
- package/zh/configure/app/output/clean-dist-path.md +2 -2
- package/zh/configure/app/output/convert-to-rem.md +2 -2
- package/zh/configure/app/output/copy.md +2 -2
- package/zh/configure/app/output/css-module-local-ident-name.md +2 -2
- package/zh/configure/app/output/data-uri-limit.md +2 -2
- package/zh/configure/app/output/disable-css-extract.md +2 -2
- package/zh/configure/app/output/disable-css-module-extension.md +2 -2
- package/zh/configure/app/output/disable-filename-hash.md +2 -2
- package/zh/configure/app/output/disable-inline-runtime-chunk.md +2 -2
- package/zh/configure/app/output/disable-minimize.md +2 -2
- package/zh/configure/app/output/disable-node-polyfill.md +8 -8
- package/zh/configure/app/output/disable-source-map.md +2 -2
- package/zh/configure/app/output/disable-ts-checker.md +2 -2
- package/zh/configure/app/output/dist-path.md +2 -2
- package/zh/configure/app/output/enable-asset-fallback.md +2 -2
- package/zh/configure/app/output/enable-asset-manifest.md +2 -2
- package/zh/configure/app/output/enable-css-module-tsdeclaration.md +2 -2
- package/zh/configure/app/output/enable-inline-scripts.md +2 -2
- package/zh/configure/app/output/enable-inline-styles.md +2 -2
- package/zh/configure/app/output/enable-latest-decorators.md +2 -2
- package/zh/configure/app/output/externals.md +2 -2
- package/zh/configure/app/output/filename.md +2 -2
- package/zh/configure/app/output/legal-comments.md +2 -2
- package/zh/configure/app/output/override-browserslist.md +2 -2
- package/zh/configure/app/output/polyfill.md +2 -2
- package/zh/configure/app/output/ssg.md +3 -2
- package/zh/configure/app/output/svg-default-export.md +2 -2
- package/zh/configure/app/performance/build-cache.md +2 -2
- package/zh/configure/app/performance/bundle-analyze.md +2 -2
- package/zh/configure/app/performance/chunk-split.md +2 -2
- package/zh/configure/app/performance/print-file-size.md +2 -2
- package/zh/configure/app/performance/profile.md +2 -2
- package/zh/configure/app/performance/remove-console.md +2 -2
- package/zh/configure/app/performance/remove-moment-locale.md +2 -2
- package/zh/configure/app/plugins.md +6 -6
- package/zh/configure/app/runtime/intro.md +39 -11
- package/zh/configure/app/runtime/master-app.md +1 -2
- package/zh/configure/app/runtime/router.md +6 -7
- package/zh/configure/app/runtime/state.md +15 -16
- package/zh/configure/app/security/sri.md +2 -2
- package/zh/configure/app/server/base-url.md +3 -6
- package/zh/configure/app/server/enable-framework-ext.md +5 -4
- package/zh/configure/app/server/port.md +24 -6
- package/zh/configure/app/server/public-routes.md +6 -8
- package/zh/configure/app/server/routes.md +6 -6
- package/zh/configure/app/server/ssr-by-entries.md +5 -8
- package/zh/configure/app/server/ssr.md +4 -5
- package/zh/configure/app/source/alias.md +2 -2
- package/zh/configure/app/source/compile-js-data-uri.md +2 -2
- package/zh/configure/app/source/config-dir.md +2 -2
- package/zh/configure/app/source/define.md +2 -2
- package/zh/configure/app/source/design-system.md +656 -630
- package/zh/configure/app/source/disable-default-entries.md +3 -3
- package/zh/configure/app/source/disable-entry-dirs.md +8 -7
- package/zh/configure/app/source/enable-async-entry.md +3 -3
- package/zh/configure/app/source/entries-dir.md +7 -7
- package/zh/configure/app/source/entries.md +5 -6
- package/zh/configure/app/source/exclude.md +2 -2
- package/zh/configure/app/source/global-vars.md +2 -2
- package/zh/configure/app/source/include.md +2 -2
- package/zh/configure/app/source/module-scopes.md +2 -2
- package/zh/configure/app/source/pre-entry.md +2 -2
- package/zh/configure/app/source/resolve-extension-prefix.md +2 -2
- package/zh/configure/app/source/resolve-main-fields.md +2 -2
- package/zh/configure/app/testing/transformer.md +2 -3
- package/zh/configure/app/tools/autoprefixer.md +2 -2
- package/zh/configure/app/tools/babel.md +2 -2
- package/zh/configure/app/tools/css-extract.md +2 -2
- package/zh/configure/app/tools/css-loader.md +2 -2
- package/zh/configure/app/tools/dev-server.md +2 -2
- package/zh/configure/app/tools/html-plugin.md +2 -2
- package/zh/configure/app/tools/inspector.md +2 -2
- package/zh/configure/app/tools/jest.md +9 -9
- package/zh/configure/app/tools/less.md +2 -2
- package/zh/configure/app/tools/minify-css.md +2 -2
- package/zh/configure/app/tools/postcss.md +2 -2
- package/zh/configure/app/tools/pug.md +2 -2
- package/zh/configure/app/tools/sass.md +2 -2
- package/zh/configure/app/tools/style-loader.md +2 -2
- package/zh/configure/app/tools/styled-components.md +2 -2
- package/zh/configure/app/tools/swc.md +12 -1
- package/zh/configure/app/tools/terser.md +2 -2
- package/zh/configure/app/tools/ts-checker.md +2 -2
- package/zh/configure/app/tools/ts-loader.md +2 -2
- package/zh/configure/app/tools/webpack-chain.md +2 -2
- package/zh/configure/app/tools/webpack.md +2 -2
- package/zh/guides/advanced-features/bff/frameworks.md +6 -6
- package/zh/guides/advanced-features/bff/function.md +49 -44
- package/zh/guides/advanced-features/bff/index.md +9 -9
- package/zh/guides/advanced-features/bff/type.md +0 -1
- package/zh/guides/advanced-features/code-split.md +3 -3
- package/zh/guides/advanced-features/compatibility.md +6 -7
- package/zh/guides/advanced-features/eslint.md +0 -1
- package/zh/guides/advanced-features/index.md +0 -5
- package/zh/guides/advanced-features/low-level.md +17 -19
- package/zh/guides/advanced-features/ssg.md +8 -9
- package/zh/guides/advanced-features/ssr.md +5 -11
- package/zh/guides/advanced-features/testing.md +3 -2
- package/zh/guides/advanced-features/web-server.md +3 -4
- package/zh/guides/basic-features/alias.md +7 -11
- package/zh/guides/basic-features/css/css-in-js.md +5 -5
- package/zh/guides/basic-features/css/css-modules.md +2 -2
- package/zh/guides/basic-features/css/postcss.md +42 -46
- package/zh/guides/basic-features/css/tailwindcss.md +5 -5
- package/zh/guides/basic-features/data-fetch.md +109 -192
- package/zh/guides/basic-features/env-vars.md +7 -6
- package/zh/guides/basic-features/html.md +54 -46
- package/zh/guides/basic-features/index.md +0 -5
- package/zh/guides/basic-features/mock.md +4 -4
- package/zh/guides/basic-features/proxy.md +4 -5
- package/zh/guides/basic-features/routes.md +105 -18
- package/zh/guides/concept/entries.md +5 -7
- package/zh/guides/get-started/quick-start.md +3 -4
- package/zh/guides/topic-detail/changesets/add.md +1 -3
- package/zh/guides/topic-detail/changesets/changelog.md +30 -31
- package/zh/guides/topic-detail/changesets/commit.md +44 -45
- package/zh/guides/topic-detail/changesets/config.md +2 -1
- package/zh/guides/topic-detail/changesets/github.md +6 -10
- package/zh/guides/topic-detail/changesets/introduce.md +0 -1
- package/zh/guides/topic-detail/changesets/release-note.md +9 -12
- package/zh/guides/topic-detail/changesets/release-pre.md +1 -1
- package/zh/guides/topic-detail/framework-plugin/extend.md +13 -13
- package/zh/guides/topic-detail/framework-plugin/hook-list.md +2 -2
- package/zh/guides/topic-detail/framework-plugin/hook.md +57 -54
- package/zh/guides/topic-detail/framework-plugin/implement.md +11 -11
- package/zh/guides/topic-detail/framework-plugin/plugin-api.md +4 -4
- package/zh/guides/topic-detail/generator/codesmith/api/app.md +36 -36
- package/zh/guides/topic-detail/generator/codesmith/api/ejs.md +2 -2
- package/zh/guides/topic-detail/generator/codesmith/api/fs.md +2 -2
- package/zh/guides/topic-detail/generator/codesmith/api/git.md +3 -2
- package/zh/guides/topic-detail/generator/codesmith/api/handlebars.md +2 -2
- package/zh/guides/topic-detail/generator/codesmith/api/json.md +9 -11
- package/zh/guides/topic-detail/generator/codesmith/api/npm.md +4 -2
- package/zh/guides/topic-detail/generator/codesmith/introduce.md +20 -7
- package/zh/guides/topic-detail/generator/codesmith/run-in-js.md +4 -5
- package/zh/guides/topic-detail/generator/codesmith/structure.md +13 -10
- package/zh/guides/topic-detail/generator/config/common.md +18 -27
- package/zh/guides/topic-detail/generator/plugin/abstract.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/introduce.md +1 -0
- package/zh/guides/topic-detail/generator/plugin/api/file/updateJSONFile.md +4 -4
- package/zh/guides/topic-detail/generator/plugin/api/info/locale.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/input/addInputAfter.md +2 -2
- package/zh/guides/topic-detail/generator/plugin/api/input/addInputBefore.md +3 -4
- package/zh/guides/topic-detail/generator/plugin/api/input/setInput.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/input/type.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/introduce.md +8 -9
- package/zh/guides/topic-detail/generator/plugin/develop.md +13 -13
- package/zh/guides/topic-detail/generator/plugin/use.md +8 -8
- package/zh/guides/topic-detail/generator/project.md +1 -1
- package/zh/guides/topic-detail/micro-frontend/c01-introduction.md +7 -8
- package/zh/guides/topic-detail/micro-frontend/c02-development.md +20 -23
- package/zh/guides/topic-detail/micro-frontend/c03-main-app.md +41 -44
- package/zh/guides/topic-detail/micro-frontend/c04-communicate.md +7 -5
- package/zh/guides/topic-detail/micro-frontend/c05-mixed-stack.md +1 -1
- package/zh/guides/topic-detail/model/auto-actions.md +0 -1
- package/zh/guides/topic-detail/model/computed-state.md +0 -2
- package/zh/guides/topic-detail/model/define-model.md +3 -6
- package/zh/guides/topic-detail/model/faq.md +2 -5
- package/zh/guides/topic-detail/model/manage-effects.md +2 -5
- package/zh/guides/topic-detail/model/model-communicate.md +1 -4
- package/zh/guides/topic-detail/model/performance.md +1 -5
- package/zh/guides/topic-detail/model/quick-start.md +0 -6
- package/zh/guides/topic-detail/model/redux-integration.md +3 -2
- package/zh/guides/topic-detail/model/test-model.md +1 -1
- package/zh/guides/topic-detail/model/typescript-best-practice.md +13 -14
- package/zh/guides/topic-detail/model/use-model.md +14 -12
- package/zh/guides/topic-detail/model/use-out-of-modernjs.md +4 -6
- package/zh/guides/topic-detail/monorepo/intro.md +0 -1
- package/zh/guides/topic-detail/monorepo/sub-project-interface.md +14 -7
- package/zh/tutorials/first-app/c01-start.md +2 -2
- package/zh/tutorials/first-app/c03-css.md +6 -9
- package/zh/tutorials/first-app/c04-routes.md +1 -1
- package/zh/tutorials/first-app/c05-loader.md +2 -1
- package/zh/tutorials/first-app/c07-container.md +6 -7
- package/zh/tutorials/first-app/c08-entries.md +5 -7
|
@@ -68,7 +68,7 @@ import {
|
|
|
68
68
|
Head,
|
|
69
69
|
Body,
|
|
70
70
|
Scripts,
|
|
71
|
-
DocumentContext
|
|
71
|
+
DocumentContext,
|
|
72
72
|
} from '@modern-js/runtime/document';
|
|
73
73
|
|
|
74
74
|
export default function Document(): React.ReactElement {
|
|
@@ -103,41 +103,48 @@ export default function Document(): React.ReactElement {
|
|
|
103
103
|
```html
|
|
104
104
|
<!DOCTYPE html>
|
|
105
105
|
<html>
|
|
106
|
-
|
|
107
|
-
<
|
|
108
|
-
<meta
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
<meta
|
|
113
|
-
<meta name="
|
|
114
|
-
<meta name="
|
|
115
|
-
<meta name="
|
|
116
|
-
<meta name="
|
|
117
|
-
<
|
|
106
|
+
<head>
|
|
107
|
+
<meta charset="utf-8" />
|
|
108
|
+
<meta
|
|
109
|
+
name="viewport"
|
|
110
|
+
content="width=device-width, initial-scale=1.0, shrink-to-fit=no, viewport-fit=cover, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"
|
|
111
|
+
/>
|
|
112
|
+
<meta http-equiv="x-ua-compatible" content="ie=edge" />
|
|
113
|
+
<meta name="renderer" content="webkit" />
|
|
114
|
+
<meta name="layoutmode" content="standard" />
|
|
115
|
+
<meta name="imagemode" content="force" />
|
|
116
|
+
<meta name="wap-font-scale" content="no" />
|
|
117
|
+
<meta name="format-detection" content="telephone=no" />
|
|
118
|
+
<script>
|
|
119
|
+
...
|
|
120
|
+
</script>
|
|
118
121
|
<script defer src="/static/js/lib-react.js"></script>
|
|
119
122
|
<script defer src="/static/js/lib-polyfill.js"></script>
|
|
120
123
|
<script defer src="/static/js/lib-router.js"></script>
|
|
121
|
-
<script
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
124
|
+
<script
|
|
125
|
+
defer
|
|
126
|
+
src="/static/js/vendors-node_modules_pnpm_loadable_component_5_15_2_react_18_2_0_node_modules_loadable_compon-3fb0cf.js"
|
|
127
|
+
></script>
|
|
128
|
+
<script
|
|
129
|
+
defer
|
|
130
|
+
src="/static/js/packages_runtime_plugin-router-legacy_dist_js_treeshaking_runtime_index_js-packages_runtime_p-28f4c9.js"
|
|
131
|
+
></script>
|
|
125
132
|
<script defer src="/static/js/sub.js"></script>
|
|
126
133
|
<link href="https://www.baidu.com" />
|
|
127
|
-
</head>
|
|
134
|
+
</head>
|
|
128
135
|
|
|
129
|
-
<body>
|
|
136
|
+
<body>
|
|
130
137
|
<div id="root">
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
138
|
+
<!--<?- html ?>-->
|
|
139
|
+
<h1 style="color:red">以下为构建时传过来的参数:</h1>
|
|
140
|
+
<h2>entryName:sub</h2>
|
|
141
|
+
<h2>title:</h2>
|
|
142
|
+
<h2>rootId: root</h2>
|
|
136
143
|
</div>
|
|
137
144
|
<h1>bottom</h1>
|
|
138
145
|
<!--<?- chunksMap.js ?>-->
|
|
139
146
|
<!--<?- SSRDataScript ?>-->
|
|
140
|
-
</body>
|
|
147
|
+
</body>
|
|
141
148
|
</html>
|
|
142
149
|
```
|
|
143
150
|
|
|
@@ -161,26 +168,27 @@ Modern.js 也支持 HTML 语法。默认情况下,Modern.js 的应用工程中
|
|
|
161
168
|
```html
|
|
162
169
|
<!DOCTYPE html>
|
|
163
170
|
<html>
|
|
164
|
-
<head>
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
</head>
|
|
175
|
-
<body>
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
171
|
+
<head>
|
|
172
|
+
<%= meta %>
|
|
173
|
+
<title><%= title %></title>
|
|
174
|
+
<%= topTemplate %>
|
|
175
|
+
|
|
176
|
+
<script>
|
|
177
|
+
window.__assetPrefix__ = '<%= assetPrefix %>';
|
|
178
|
+
</script>
|
|
179
|
+
<%= headTemplate %>
|
|
180
|
+
<!-- webpack inject css -->
|
|
181
|
+
</head>
|
|
182
|
+
<body>
|
|
183
|
+
<noscript>
|
|
184
|
+
We're sorry but react app doesn't work properly without JavaScript
|
|
185
|
+
enabled. Please enable it to continue.
|
|
186
|
+
</noscript>
|
|
187
|
+
<div id="<%= mountId %>"></div>
|
|
188
|
+
<%= bodyTemplate %>
|
|
189
|
+
<!-- webpack inject js -->
|
|
190
|
+
<!--<?- bottomTemplate ?>-->
|
|
191
|
+
</body>
|
|
184
192
|
</html>
|
|
185
193
|
```
|
|
186
194
|
|
|
@@ -220,7 +228,7 @@ Modern.js 也支持 HTML 语法。默认情况下,Modern.js 的应用工程中
|
|
|
220
228
|
|
|
221
229
|
例如,如下设置的 HTML 片段仅对入口 `entry1` 生效:
|
|
222
230
|
|
|
223
|
-
```
|
|
231
|
+
```bash
|
|
224
232
|
.
|
|
225
233
|
├── config/
|
|
226
234
|
│ └── html/
|
|
@@ -50,15 +50,15 @@ const Mock = require('mockjs');
|
|
|
50
50
|
|
|
51
51
|
module.exports = {
|
|
52
52
|
'/api/getInfo': Mock.mock({
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
'data|1-10': [{ name: '@cname' }],
|
|
54
|
+
}) /* => {data: [{name: "董霞"}, {name: "魏敏"}, {name: "石磊"}} */,
|
|
55
55
|
};
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
:::info 更多随机数据生成库
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
- [Chancejs](https://github.com/chancejs/chancejs)
|
|
61
|
+
- [Mock](https://github.com/nuysoft/Mock/wiki/Getting-Started)
|
|
62
62
|
|
|
63
63
|
:::
|
|
64
64
|
|
|
@@ -7,8 +7,8 @@ sidebar_position: 5
|
|
|
7
7
|
|
|
8
8
|
Modern.js 在 [`tools.devServer`](/docs/configure/app/tools/dev-server) 中提供了配置开发环境代理的方式。例如,将本地开发接口,代理到线上某个地址:
|
|
9
9
|
|
|
10
|
-
```
|
|
11
|
-
import { defineConfig }
|
|
10
|
+
```ts title="modern.config.ts"
|
|
11
|
+
import { defineConfig } from '@modern-js/app-tools';
|
|
12
12
|
|
|
13
13
|
export default defineConfig({
|
|
14
14
|
tools: {
|
|
@@ -40,7 +40,7 @@ import GlobalProxy from '@site-docs/components/global-proxy.md'
|
|
|
40
40
|
|
|
41
41
|
通过配置 [`bff.proxy`](/docs/configure/app/bff/proxy) 可以代理 BFF API 请求到指定的服务上,上述两种代理不同,它同样可以用在生产环境:
|
|
42
42
|
|
|
43
|
-
```
|
|
43
|
+
```ts title="modern.config.ts"
|
|
44
44
|
export default defineConfig({
|
|
45
45
|
bff: {
|
|
46
46
|
proxy: {
|
|
@@ -53,8 +53,7 @@ export default defineConfig({
|
|
|
53
53
|
例如代码中使用一体化 BFF 调用时,最终请求 `http://localhost:8080/api/v1/topics` 会自动代理到 `https://cnodejs.org/api/v1/topics`:
|
|
54
54
|
|
|
55
55
|
```js
|
|
56
|
-
import getTopics from '@api/v1/topics'
|
|
56
|
+
import getTopics from '@api/v1/topics';
|
|
57
57
|
|
|
58
58
|
getTopics();
|
|
59
59
|
```
|
|
60
|
-
|
|
@@ -26,7 +26,6 @@ Modern.js 支持了业界流行的约定式路由模式:**嵌套路由**,使
|
|
|
26
26
|
+------------------+ +-----------------+
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
|
|
30
29
|
### 路由文件约定
|
|
31
30
|
|
|
32
31
|
在`routes/` 目录下,目录名会作为路由 url 的映射,Modern.js 有两个文件约定 `layout.[jt]sx` 和 `page.[jt]sx`(后面简写为 `.tsx`)。这两个文件决定了应用的布局层次,其中 `layout.tsx` 中作为布局组件,`page.tsx` 作为内容组件,是整条路由的叶子节点(一条路由有且仅有一个叶子节点,且必须以叶子节点结尾)。
|
|
@@ -42,6 +41,7 @@ Modern.js 支持了业界流行的约定式路由模式:**嵌套路由**,使
|
|
|
42
41
|
```
|
|
43
42
|
|
|
44
43
|
会产出下面两条路由:
|
|
44
|
+
|
|
45
45
|
- `/`
|
|
46
46
|
- `/user`
|
|
47
47
|
|
|
@@ -91,8 +91,8 @@ export default () => {
|
|
|
91
91
|
<>
|
|
92
92
|
<Outlet></Outlet>
|
|
93
93
|
</>
|
|
94
|
-
)
|
|
95
|
-
}
|
|
94
|
+
);
|
|
95
|
+
};
|
|
96
96
|
```
|
|
97
97
|
|
|
98
98
|
:::note
|
|
@@ -122,6 +122,7 @@ export default () => {
|
|
|
122
122
|
```
|
|
123
123
|
|
|
124
124
|
2. 当路由为 `/blog` 时,`routes/layout.tsx` 中的 `<Outlet>` 代表的是 `routes/blog/page.tsx` 中导出的组件,生成以下 UI 结构:
|
|
125
|
+
|
|
125
126
|
```tsx
|
|
126
127
|
<Layout>
|
|
127
128
|
<BlogPage />
|
|
@@ -165,7 +166,7 @@ export default () => {
|
|
|
165
166
|
|
|
166
167
|
### 无路径布局
|
|
167
168
|
|
|
168
|
-
当目录名以
|
|
169
|
+
当目录名以 \_\_ 开头时,对应的目录名不会转换为实际的路由路径,例如以下文件目录:
|
|
169
170
|
|
|
170
171
|
```
|
|
171
172
|
.
|
|
@@ -180,7 +181,7 @@ export default () => {
|
|
|
180
181
|
└── page.tsx
|
|
181
182
|
```
|
|
182
183
|
|
|
183
|
-
Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组件会作为 `login/page.tsx` 和 `signup/page.tsx`
|
|
184
|
+
Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组件会作为 `login/page.tsx` 和 `signup/page.tsx` 的布局组件,但`__auth` 不会作为路由路径片段。
|
|
184
185
|
|
|
185
186
|
当需要为某些类型的路由,做独立的布局,或是想要将路由做归类时,这一功能非常有用。
|
|
186
187
|
|
|
@@ -202,11 +203,11 @@ Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组
|
|
|
202
203
|
|
|
203
204
|
```tsx
|
|
204
205
|
<RootLayout>
|
|
205
|
-
|
|
206
|
+
<UserProfileEdit /> // routes/user.profile.[id].edit/page.tsx
|
|
206
207
|
</RootLayout>
|
|
207
208
|
```
|
|
208
209
|
|
|
209
|
-
### Loading
|
|
210
|
+
### (WIP)Loading
|
|
210
211
|
|
|
211
212
|
`routes/` 下每一层目录中,开发者可以创建 `loading.tsx` 文件,默认导出一个 `<Loading>` 组件。
|
|
212
213
|
|
|
@@ -225,6 +226,7 @@ Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组
|
|
|
225
226
|
```
|
|
226
227
|
|
|
227
228
|
当定义 `loading.tsx` 时,就相当于以下布局:
|
|
229
|
+
|
|
228
230
|
```tsx title="当路由为 / 时"
|
|
229
231
|
<Layout>
|
|
230
232
|
<Suspense fallback={<Loading/>}>
|
|
@@ -235,7 +237,7 @@ Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组
|
|
|
235
237
|
|
|
236
238
|
```tsx title="当路由为 /blog 时"
|
|
237
239
|
<Layout>
|
|
238
|
-
<Suspense fallback={<Loading/>}>
|
|
240
|
+
<Suspense fallback={<Loading />}>
|
|
239
241
|
<BlogPage />
|
|
240
242
|
</Suspense>
|
|
241
243
|
</Layout>
|
|
@@ -243,11 +245,12 @@ Modern.js 会生成 `/login` 和 `/sign` 两条路由,`__auth/layout.tsx` 组
|
|
|
243
245
|
|
|
244
246
|
```tsx title="当路由为 /blog/123 时"
|
|
245
247
|
<Layout>
|
|
246
|
-
<Suspense fallback={<Loading/>}>
|
|
248
|
+
<Suspense fallback={<Loading />}>
|
|
247
249
|
<BlogIdPage />
|
|
248
250
|
</Suspense>
|
|
249
251
|
</Layout>
|
|
250
252
|
```
|
|
253
|
+
|
|
251
254
|
:::info
|
|
252
255
|
当目录的 layout 组件不存在时,该目录下的 loading 组件也不会生效。
|
|
253
256
|
Modern.js 建议必须有根 layout 和根 loading。
|
|
@@ -257,7 +260,6 @@ Modern.js 建议必须有根 layout 和根 loading。
|
|
|
257
260
|
|
|
258
261
|
同理,当路由从 `/` 或者 `/blog` 跳转到 `/blog/123` 时,如果 `blog/[id]/page` 组件的 JS Chunk 还未加载,也会先展示 `loading.tsx` 中导出的组件 UI。
|
|
259
262
|
|
|
260
|
-
|
|
261
263
|
### 错误处理
|
|
262
264
|
|
|
263
265
|
`routes/` 下每一层目录中,开发者同样可以定义一个 `error.tsx` 文件,默认导出一个 `<ErrorBoundary>` 组件。
|
|
@@ -267,6 +269,7 @@ Modern.js 建议必须有根 layout 和根 loading。
|
|
|
267
269
|
`<ErrorBoundary>` 可以返回出错时的 UI 视图,当前层级未声明 `<ErrorBoundary>` 组件时,错误会向上冒泡到更上层的组件,直到被捕获或抛出错误。同时,当组件出错时,只会影响捕获到该错误的路由组件及子组件,其他组件的状态和视图不受影响,可以继续交互。
|
|
268
270
|
|
|
269
271
|
<!-- Todo API 路由-->
|
|
272
|
+
|
|
270
273
|
在 `<ErrorBoundary>` 组件内,可以使用 [useRouteError](/docs/apis/app/runtime/router/#useparams) 获取的错误的具体信息:
|
|
271
274
|
|
|
272
275
|
```tsx
|
|
@@ -275,14 +278,98 @@ const ErrorBoundary = () => {
|
|
|
275
278
|
const error = useRouteError();
|
|
276
279
|
return (
|
|
277
280
|
<div>
|
|
278
|
-
|
|
279
|
-
|
|
281
|
+
<h1>{error.status}</h1>
|
|
282
|
+
<h2>{error.message}</h2>
|
|
280
283
|
</div>
|
|
281
|
-
)
|
|
282
|
-
}
|
|
284
|
+
);
|
|
285
|
+
};
|
|
283
286
|
export default ErrorBoundary;
|
|
284
287
|
```
|
|
285
288
|
|
|
289
|
+
### 运行时配置
|
|
290
|
+
|
|
291
|
+
在每个根 `Layout` 组件中(`routes/layout.ts`),可以动态地定义应用运行时配置:
|
|
292
|
+
|
|
293
|
+
```ts title="src/routes/layout.tsx"
|
|
294
|
+
// 定义运行时配置
|
|
295
|
+
import type { AppConfig } from '@modern-js/runtime';
|
|
296
|
+
|
|
297
|
+
export const config = (): AppConfig => {
|
|
298
|
+
return {
|
|
299
|
+
router: {
|
|
300
|
+
supportHtml5History: false
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
};
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
### 渲染前的钩子
|
|
307
|
+
|
|
308
|
+
在有些场景下,需要在应用渲染前做一些操作,可以在 `routes/layout.tsx` 中定义 `init` 钩子,`init` 在客户端和服务端均会执行,基本使用示例如下:
|
|
309
|
+
|
|
310
|
+
```ts title="src/routes/layout.tsx"
|
|
311
|
+
import type { RuntimeContext } from '@modern-js/runtime';
|
|
312
|
+
|
|
313
|
+
export const init = (context: RuntimeContext) => {
|
|
314
|
+
// do something
|
|
315
|
+
};
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
通过 `init` 钩子可以挂载一些全局的数据,在应用的其他地方可以访问 `runtimeContext` 变量:
|
|
319
|
+
|
|
320
|
+
:::note
|
|
321
|
+
该功能在应用需要页面前置的数据、自定义数据注入或是框架迁移(如 Next.js)时会非常有用。
|
|
322
|
+
:::
|
|
323
|
+
|
|
324
|
+
```ts title="src/routes/layout.tsx"
|
|
325
|
+
import {
|
|
326
|
+
RuntimeContext,
|
|
327
|
+
} from '@modern-js/runtime';
|
|
328
|
+
|
|
329
|
+
export const init = (context: RuntimeContext) => {
|
|
330
|
+
return {
|
|
331
|
+
message: 'Hello World',
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
```tsx title="src/routes/page.tsx"
|
|
337
|
+
import { useRuntimeContext } from '@modern-js/runtime';
|
|
338
|
+
|
|
339
|
+
export default () => {
|
|
340
|
+
const { context } = useRuntimeContext();
|
|
341
|
+
const { message } = context.getInitData();
|
|
342
|
+
|
|
343
|
+
return <div>{message}</div>;
|
|
344
|
+
}
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
配合 SSR 功能时,浏览器端可以获取到 SSR 时 `init` 返回的数据,开发者可以自行判断是否要在浏览器端重新获取数据来覆盖 SSR 数据,例如:
|
|
348
|
+
|
|
349
|
+
```tsx title="src/routes/layout.tsx"
|
|
350
|
+
import {
|
|
351
|
+
RuntimeContext,
|
|
352
|
+
} from '@modern-js/runtime';
|
|
353
|
+
|
|
354
|
+
export const init = (context: RuntimeContext) => {
|
|
355
|
+
if (process.env.JUPITER_TARGET === 'node') {
|
|
356
|
+
return {
|
|
357
|
+
message: 'Hello World By Server',
|
|
358
|
+
}
|
|
359
|
+
} else {
|
|
360
|
+
const { context } = runtimeContext;
|
|
361
|
+
const data = context.getInitData();
|
|
362
|
+
// 如果没有获取到期望的数据
|
|
363
|
+
if (!data.message) {
|
|
364
|
+
return {
|
|
365
|
+
message: 'Hello World By Client'
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
|
|
286
373
|
## 自控式路由
|
|
287
374
|
|
|
288
375
|
以 `src/App.tsx` 为约定的入口,Modern.js 不会多路由做额外的操作,开发者可以自行使用 React Router 6 的 API 进行开发,例如:
|
|
@@ -316,8 +403,8 @@ export default () => {
|
|
|
316
403
|
export default defineConfig({
|
|
317
404
|
runtime: {
|
|
318
405
|
router: true,
|
|
319
|
-
}
|
|
320
|
-
})
|
|
406
|
+
},
|
|
407
|
+
});
|
|
321
408
|
```
|
|
322
409
|
|
|
323
410
|
Modern.js 从 `@modern-js/runtime/router` 命名空间暴露了 React Router 的 API 供开发者使用,保证开发者和 Modern.js 中使用同一份代码。另外,这种情况下,React Router 的代码会被打包到 JS 产物中。如果项目已经有自己的路由方案,或者不需要使用客户端路由,可以关闭这个功能。
|
|
@@ -326,6 +413,6 @@ Modern.js 从 `@modern-js/runtime/router` 命名空间暴露了 React Router 的
|
|
|
326
413
|
export default defineConfig({
|
|
327
414
|
runtime: {
|
|
328
415
|
router: false,
|
|
329
|
-
}
|
|
330
|
-
})
|
|
416
|
+
},
|
|
417
|
+
});
|
|
331
418
|
```
|
|
@@ -59,7 +59,6 @@ Modern.js 可以很方便的将单入口切换成多入口。可以在项目下
|
|
|
59
59
|
Modern.js 会将和 `package.json` 中 `name` 字段同名的入口作为主入口,默认路由为 `/`,其他入口默认路由为 `/{entryName}`。
|
|
60
60
|
:::
|
|
61
61
|
|
|
62
|
-
|
|
63
62
|
## 入口类型
|
|
64
63
|
|
|
65
64
|
不同的入口类型具有不同的编译和运行时行为。在 Modern.js 创建项目时,开发者可以手动选择创建**框架模式**或是**构建模式**的项目。完成创建后,可以看到不同模式的项目样板文件是不同的。
|
|
@@ -75,7 +74,7 @@ Modern.js 会将和 `package.json` 中 `name` 字段同名的入口作为主入
|
|
|
75
74
|
1. 具有 `routes/` 目录
|
|
76
75
|
2. 具有 `App.[jt]sx?` 文件
|
|
77
76
|
3. 具有 `index.[jt]sx?` 文件
|
|
78
|
-
|
|
77
|
+
4. 具有 `pages/` 目录(兼容 Modern.js 1.0)
|
|
79
78
|
|
|
80
79
|
当 `src/` 目录满足入口特征时,Modern.js 会认为当前项目为单入口应用。
|
|
81
80
|
|
|
@@ -106,10 +105,9 @@ Modern.js 会将和 `package.json` 中 `name` 字段同名的入口作为主入
|
|
|
106
105
|
如果入口中存在 `index.[jt]sx` 文件,并且当文件默认导出函数时,Modern.js 还是会根据 runtime 的设置情况生成 createApp 包裹后的代码。在渲染过程中,将 createApp 包裹后的组件作为参数传递给 index 文件导出的函数,这样开发者可以自定义将组件挂载到 DOM 节点上,或在挂载前添加自定义行为。例如:
|
|
107
106
|
|
|
108
107
|
```tsx
|
|
109
|
-
import ReactDOM from 'react-dom/client'
|
|
108
|
+
import ReactDOM from 'react-dom/client';
|
|
110
109
|
import { bootstrap } from '@modern-js/runtime';
|
|
111
110
|
|
|
112
|
-
|
|
113
111
|
export default (App: React.ComponentType) => {
|
|
114
112
|
// do something before bootstrap...
|
|
115
113
|
bootstrap(App, 'root', undefined, ReactDOM);
|
|
@@ -137,16 +135,16 @@ let AppWrapper = null;
|
|
|
137
135
|
function render() {
|
|
138
136
|
AppWrapper = createApp({
|
|
139
137
|
// runtime 的插件参数...
|
|
140
|
-
})(App)
|
|
138
|
+
})(App);
|
|
141
139
|
if (IS_BROWSER) {
|
|
142
140
|
customBootstrap(AppWrapper);
|
|
143
141
|
}
|
|
144
|
-
return AppWrapper
|
|
142
|
+
return AppWrapper;
|
|
145
143
|
}
|
|
146
144
|
|
|
147
145
|
AppWrapper = render();
|
|
148
146
|
|
|
149
|
-
export default AppWrapper
|
|
147
|
+
export default AppWrapper;
|
|
150
148
|
```
|
|
151
149
|
|
|
152
150
|
### 构建模式入口
|
|
@@ -28,7 +28,6 @@ npx @modern-js/create myapp
|
|
|
28
28
|
|
|
29
29
|
## 初始化项目
|
|
30
30
|
|
|
31
|
-
|
|
32
31
|
import InitApp from '@site-docs/components/init-app.md'
|
|
33
32
|
|
|
34
33
|
<InitApp />
|
|
@@ -46,7 +45,7 @@ import DebugApp from '@site-docs/components/debug-app.md'
|
|
|
46
45
|
可以通过配置文件来开启功能,或覆盖 Modern.js 的默认行为。例如添加如下配置,开启 SSR:
|
|
47
46
|
|
|
48
47
|
```ts
|
|
49
|
-
import
|
|
48
|
+
import appTools, { defineConfig } from '@modern-js/app-tools';
|
|
50
49
|
|
|
51
50
|
// https://modernjs.dev/docs/apis/app/config
|
|
52
51
|
export default defineConfig({
|
|
@@ -57,7 +56,7 @@ export default defineConfig({
|
|
|
57
56
|
server: {
|
|
58
57
|
ssr: true,
|
|
59
58
|
},
|
|
60
|
-
plugins: [
|
|
59
|
+
plugins: [appTools()],
|
|
61
60
|
});
|
|
62
61
|
```
|
|
63
62
|
|
|
@@ -89,7 +88,7 @@ info File sizes after production build:
|
|
|
89
88
|
dist/static/js/async/509.fcb06e14.js 283 B 230 B
|
|
90
89
|
|
|
91
90
|
Client ✔ done in 3.57s
|
|
92
|
-
|
|
91
|
+
```
|
|
93
92
|
|
|
94
93
|
构建产物默认生成到 `dist/`,目录结构如下:
|
|
95
94
|
|
|
@@ -46,7 +46,6 @@ pnpm run change
|
|
|
46
46
|
---
|
|
47
47
|
|
|
48
48
|
feat: test module solution changeset
|
|
49
|
-
|
|
50
49
|
```
|
|
51
50
|
|
|
52
51
|
该文件中包含了 changeset 的所有信息。
|
|
@@ -115,11 +114,10 @@ pnpm run change -- --empty
|
|
|
115
114
|
|
|
116
115
|
如果当前变更是修改仓库的一些基础设施,比如 CI、测试等,就不需要添加 changeset 或者可以添加一个空的 changeset。
|
|
117
116
|
|
|
118
|
-
-
|
|
117
|
+
- 一个 pull reuqest 可以提交多个 changeset
|
|
119
118
|
|
|
120
119
|
当一个 pull request 存在多个功能开发或者问题修复时,可以多次执行 `pnpm run change` 添加多个 changeset 文件,每个文件选择对应功能的包和添加变更信息即可。
|
|
121
120
|
|
|
122
121
|
- 创建 changeset 时,需要选择该功能相关的所有包
|
|
123
122
|
|
|
124
123
|
在 Monorepo 中创建 changeset 时,需要选中和该功能相关的所有变更包,避免出现发版时部分包未发布的情况。
|
|
125
|
-
|
|
@@ -22,8 +22,8 @@ Changelog 信息主要包含以下两种信息:
|
|
|
22
22
|
|
|
23
23
|
- changeset
|
|
24
24
|
|
|
25
|
-
```
|
|
26
|
-
export type VersionType =
|
|
25
|
+
```ts
|
|
26
|
+
export type VersionType = 'major' | 'minor' | 'patch' | 'none';
|
|
27
27
|
|
|
28
28
|
export type Release = { name: string; type: VersionType };
|
|
29
29
|
|
|
@@ -47,7 +47,7 @@ Changelog 内容。
|
|
|
47
47
|
|
|
48
48
|
`@changesets/cli/changelog` 默认处理逻辑为将 `summary` 信息按照换行符 `\n` 分割,第一样前面增加 `-` 作为列表开头,其他内容作为第一行内容的补充整理在列表下方。
|
|
49
49
|
|
|
50
|
-
```
|
|
50
|
+
```ts
|
|
51
51
|
async function getReleaseLine(changeset, type) {
|
|
52
52
|
const [firstLine, ...futureLines] = changeset.summary
|
|
53
53
|
.split('\n')
|
|
@@ -75,18 +75,18 @@ async function getReleaseLine(changeset, type) {
|
|
|
75
75
|
|
|
76
76
|
- dependenciesUpdated
|
|
77
77
|
|
|
78
|
-
```
|
|
78
|
+
```ts
|
|
79
79
|
type ModCompWithPackage = {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
80
|
+
name: string; // 依赖模块名称
|
|
81
|
+
type: VersionType; // 依赖模块的升级类型
|
|
82
|
+
oldVersion: string; // 依赖模块当前版本号
|
|
83
|
+
newVersion: string; // 依赖模块新版本号
|
|
84
|
+
changesets: string[]; // 关联的 changeset id 列表
|
|
85
|
+
packageJson: PackageJSON; // 依赖模块完整的 package.json 内容
|
|
86
|
+
dir: string; // 依赖模块的路径(绝对路径)
|
|
87
87
|
};
|
|
88
88
|
|
|
89
|
-
type DependenciesUpdated = ModCompWithPackage[]
|
|
89
|
+
type DependenciesUpdated = ModCompWithPackage[];
|
|
90
90
|
```
|
|
91
91
|
|
|
92
92
|
#### 返回值
|
|
@@ -97,23 +97,23 @@ Changelog 内容。
|
|
|
97
97
|
|
|
98
98
|
`@changesets/cli/changelog` 默认会使用 changesets 信息展示对应的 `Updated dependencies + commit id`,以列表形式展示。然后根据 `dependenciesUpdated` 信息展示对应的依赖包包名和新版本号,作为列表的子列表项。
|
|
99
99
|
|
|
100
|
-
```
|
|
100
|
+
```ts
|
|
101
101
|
async function getDependencyReleaseLine(changesets, dependenciesUpdated) {
|
|
102
|
-
|
|
103
|
-
|
|
102
|
+
console.log('getDependencyReleaseLine', changesets, dependenciesUpdated);
|
|
103
|
+
if (dependenciesUpdated.length === 0) return '';
|
|
104
104
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
105
|
+
const changesetLinks = changesets.map(
|
|
106
|
+
changeset =>
|
|
107
|
+
`- Updated dependencies${
|
|
108
|
+
changeset.commit ? ` [${changeset.commit}]` : ''
|
|
109
|
+
}`,
|
|
110
|
+
);
|
|
111
111
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
const updatedDepenenciesList = dependenciesUpdated.map(
|
|
113
|
+
dependency => ` - ${dependency.name}@${dependency.newVersion}`,
|
|
114
|
+
);
|
|
115
115
|
|
|
116
|
-
|
|
116
|
+
return [...changesetLinks, ...updatedDepenenciesList].join('\n');
|
|
117
117
|
}
|
|
118
118
|
```
|
|
119
119
|
|
|
@@ -140,7 +140,7 @@ changelog 配置如果为相对路径为 `.changesets` 目录下的相对路径
|
|
|
140
140
|
|
|
141
141
|
例如创建 `.changeset/my-changelog-config.js` 文件,定义如下内容:
|
|
142
142
|
|
|
143
|
-
```
|
|
143
|
+
```ts title=".changeset/my-changelog-config.js"
|
|
144
144
|
async function getReleaseLine(changeset, type) {}
|
|
145
145
|
|
|
146
146
|
async function getDependencyReleaseLine(changesets, dependenciesUpdated) {}
|
|
@@ -149,7 +149,6 @@ module.exports = {
|
|
|
149
149
|
getReleaseLine,
|
|
150
150
|
getDependencyReleaseLine,
|
|
151
151
|
};
|
|
152
|
-
|
|
153
152
|
```
|
|
154
153
|
|
|
155
154
|
`changlog` 配置为 `./my-changelog-config.js` 即可:
|
|
@@ -167,7 +166,7 @@ module.exports = {
|
|
|
167
166
|
|
|
168
167
|
#### 使用 `npx @modern-js/create` 创建模块工程方案。
|
|
169
168
|
|
|
170
|
-
```
|
|
169
|
+
```md
|
|
171
170
|
? 请选择你想创建的工程类型 模块
|
|
172
171
|
? 请填写项目名称 custom-changelog
|
|
173
172
|
? 请选择开发语言 TS
|
|
@@ -176,7 +175,7 @@ module.exports = {
|
|
|
176
175
|
|
|
177
176
|
#### 实现自定义内容。
|
|
178
177
|
|
|
179
|
-
```
|
|
178
|
+
```ts title="src/index.ts"
|
|
180
179
|
export async function getReleaseLine() {}
|
|
181
180
|
|
|
182
181
|
export async function getDependencyReleaseLine() {}
|
|
@@ -201,7 +200,7 @@ export async function getDependencyReleaseLine() {}
|
|
|
201
200
|
|
|
202
201
|
#### 执行 `pnpm run new` 创建模块子项目。
|
|
203
202
|
|
|
204
|
-
```
|
|
203
|
+
```md
|
|
205
204
|
? 请选择你想创建的工程类型 模块
|
|
206
205
|
? 请填写子项目名称 custom-changelog
|
|
207
206
|
? 请填写子项目目录名称 custom-changelog
|
|
@@ -210,7 +209,7 @@ export async function getDependencyReleaseLine() {}
|
|
|
210
209
|
|
|
211
210
|
#### 实现自定义内容。
|
|
212
211
|
|
|
213
|
-
```
|
|
212
|
+
```ts title="src/index.ts"
|
|
214
213
|
export async function getReleaseLine() {}
|
|
215
214
|
|
|
216
215
|
export async function getDependencyReleaseLine() {}
|