@intlayer/docs 9.5.6 → 9.5.8
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/blog/ar/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ar/i18next_vs_intlayer.md +130 -16
- package/blog/ar/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/ar/lingui_vs_intlayer.md +122 -15
- package/blog/ar/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ar/next-intl_vs_intlayer.md +136 -20
- package/blog/ar/vue-i18n_vs_intlayer-vue-i18n.md +119 -17
- package/blog/ar/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ar/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/de/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/de/i18next_vs_intlayer.md +128 -14
- package/blog/de/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/de/lingui_vs_intlayer.md +122 -15
- package/blog/de/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/de/next-intl_vs_intlayer.md +125 -15
- package/blog/de/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/de/vue-i18n_vs_intlayer.md +193 -31
- package/blog/en/i18next_vs_intlayer-i18next.md +121 -14
- package/blog/en/i18next_vs_intlayer.md +128 -14
- package/blog/en/is_intlayer_lighter_than_paraglide.md +288 -0
- package/blog/en/lingui_vs_intlayer.md +124 -15
- package/blog/en/next-intl_vs_intlayer-next-intl.md +123 -14
- package/blog/en/next-intl_vs_intlayer.md +125 -13
- package/blog/en/vue-i18n_vs_intlayer-vue-i18n.md +115 -15
- package/blog/en/vue-i18n_vs_intlayer.md +188 -27
- package/blog/en-GB/i18next_vs_intlayer-i18next.md +121 -14
- package/blog/en-GB/i18next_vs_intlayer.md +128 -14
- package/blog/en-GB/is_intlayer_lighter_than_paraglide.md +285 -0
- package/blog/en-GB/lingui_vs_intlayer.md +122 -15
- package/blog/en-GB/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/en-GB/next-intl_vs_intlayer.md +125 -15
- package/blog/en-GB/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/en-GB/vue-i18n_vs_intlayer.md +187 -25
- package/blog/en-GB/vue-i18n_vs_intlayer_benchmark.md +116 -0
- package/blog/es/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/es/i18next_vs_intlayer.md +128 -14
- package/blog/es/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/es/lingui_vs_intlayer.md +122 -15
- package/blog/es/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/es/next-intl_vs_intlayer.md +125 -15
- package/blog/es/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/es/vue-i18n_vs_intlayer.md +193 -31
- package/blog/fr/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/fr/i18next_vs_intlayer.md +128 -14
- package/blog/fr/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/fr/lingui_vs_intlayer.md +122 -15
- package/blog/fr/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/fr/next-intl_vs_intlayer.md +127 -15
- package/blog/fr/vue-i18n_vs_intlayer-vue-i18n.md +118 -17
- package/blog/fr/vue-i18n_vs_intlayer.md +192 -31
- package/blog/fr/vue-i18n_vs_intlayer_benchmark.md +329 -7
- package/blog/hi/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/hi/i18next_vs_intlayer.md +130 -16
- package/blog/hi/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/hi/lingui_vs_intlayer.md +122 -15
- package/blog/hi/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/hi/next-intl_vs_intlayer.md +135 -19
- package/blog/hi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/hi/vue-i18n_vs_intlayer.md +193 -31
- package/blog/hi/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/id/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/id/i18next_vs_intlayer.md +128 -14
- package/blog/id/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/id/lingui_vs_intlayer.md +122 -15
- package/blog/id/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/id/next-intl_vs_intlayer.md +135 -19
- package/blog/id/vue-i18n_vs_intlayer-vue-i18n.md +354 -2
- package/blog/id/vue-i18n_vs_intlayer.md +188 -26
- package/blog/id/vue-i18n_vs_intlayer_benchmark.md +327 -7
- package/blog/it/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/it/i18next_vs_intlayer.md +128 -14
- package/blog/it/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/it/lingui_vs_intlayer.md +122 -15
- package/blog/it/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/it/next-intl_vs_intlayer.md +125 -15
- package/blog/it/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/it/vue-i18n_vs_intlayer.md +191 -31
- package/blog/it/vue-i18n_vs_intlayer_benchmark.md +332 -5
- package/blog/ja/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ja/i18next_vs_intlayer.md +129 -17
- package/blog/ja/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/ja/lingui_vs_intlayer.md +122 -15
- package/blog/ja/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ja/next-intl_vs_intlayer.md +124 -14
- package/blog/ja/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/ja/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ja/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/ko/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ko/i18next_vs_intlayer.md +129 -17
- package/blog/ko/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/ko/lingui_vs_intlayer.md +122 -15
- package/blog/ko/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ko/next-intl_vs_intlayer.md +134 -18
- package/blog/ko/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/ko/vue-i18n_vs_intlayer.md +193 -31
- package/blog/pl/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/pl/i18next_vs_intlayer.md +128 -14
- package/blog/pl/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/pl/lingui_vs_intlayer.md +122 -15
- package/blog/pl/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/pl/next-intl_vs_intlayer.md +134 -18
- package/blog/pl/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/pl/vue-i18n_vs_intlayer.md +188 -26
- package/blog/pl/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/pt/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/pt/i18next_vs_intlayer.md +128 -14
- package/blog/pt/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/pt/lingui_vs_intlayer.md +122 -15
- package/blog/pt/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/pt/next-intl_vs_intlayer.md +131 -15
- package/blog/pt/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/pt/vue-i18n_vs_intlayer.md +193 -31
- package/blog/pt/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/ru/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ru/i18next_vs_intlayer.md +130 -16
- package/blog/ru/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/ru/lingui_vs_intlayer.md +122 -15
- package/blog/ru/next-intl_vs_intlayer-next-intl.md +125 -16
- package/blog/ru/next-intl_vs_intlayer.md +123 -13
- package/blog/ru/vue-i18n_vs_intlayer-vue-i18n.md +127 -27
- package/blog/ru/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ru/vue-i18n_vs_intlayer_benchmark.md +326 -19
- package/blog/tr/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/tr/i18next_vs_intlayer.md +128 -14
- package/blog/tr/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/tr/lingui_vs_intlayer.md +122 -15
- package/blog/tr/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/tr/next-intl_vs_intlayer.md +136 -20
- package/blog/tr/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/tr/vue-i18n_vs_intlayer.md +188 -26
- package/blog/tr/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/uk/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/uk/i18next_vs_intlayer.md +130 -16
- package/blog/uk/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/uk/lingui_vs_intlayer.md +122 -15
- package/blog/uk/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/uk/next-intl_vs_intlayer.md +135 -19
- package/blog/uk/vue-i18n_vs_intlayer-vue-i18n.md +135 -17
- package/blog/uk/vue-i18n_vs_intlayer.md +188 -27
- package/blog/uk/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/vi/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/vi/i18next_vs_intlayer.md +128 -14
- package/blog/vi/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/vi/lingui_vs_intlayer.md +122 -15
- package/blog/vi/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/vi/next-intl_vs_intlayer.md +135 -19
- package/blog/vi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/vi/vue-i18n_vs_intlayer.md +188 -26
- package/blog/vi/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/zh/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/zh/i18next_vs_intlayer.md +128 -14
- package/blog/zh/is_intlayer_lighter_than_paraglide.md +284 -0
- package/blog/zh/lingui_vs_intlayer.md +122 -15
- package/blog/zh/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/zh/next-intl_vs_intlayer.md +125 -15
- package/blog/zh/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/zh/vue-i18n_vs_intlayer.md +192 -31
- package/blog/zh/vue-i18n_vs_intlayer_benchmark.md +340 -9
- package/dist/cjs/generated/blog.entry.cjs +20 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +60 -40
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +20 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +60 -40
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -0
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +3 -2
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/benchmark/nextjs.md +19 -16
- package/docs/ar/benchmark/solid.md +26 -9
- package/docs/ar/benchmark/svelte.md +22 -7
- package/docs/ar/benchmark/tanstack.md +20 -16
- package/docs/ar/benchmark/vue.md +19 -10
- package/docs/ar/chrome_extension.md +130 -0
- package/docs/ar/cli/index.md +11 -1
- package/docs/ar/cli/infra.md +162 -0
- package/docs/ar/cli/init.md +24 -1
- package/docs/ar/cli/upgrade.md +125 -0
- package/docs/ar/dictionary/html.md +173 -5
- package/docs/ar/dictionary/markdown.md +263 -1
- package/docs/ar/intlayer_with_analog.md +23 -1
- package/docs/ar/intlayer_with_angular_19.md +24 -1
- package/docs/ar/intlayer_with_angular_21.md +24 -1
- package/docs/ar/intlayer_with_astro.md +24 -1
- package/docs/ar/intlayer_with_astro_lit.md +25 -1
- package/docs/ar/intlayer_with_astro_preact.md +26 -1
- package/docs/ar/intlayer_with_astro_react.md +26 -1
- package/docs/ar/intlayer_with_astro_solid.md +26 -1
- package/docs/ar/intlayer_with_astro_svelte.md +25 -1
- package/docs/ar/intlayer_with_astro_vue.md +25 -1
- package/docs/ar/intlayer_with_remix_3.md +22 -1
- package/docs/ar/self_hosting.md +406 -231
- package/docs/de/benchmark/nextjs.md +19 -16
- package/docs/de/benchmark/solid.md +26 -9
- package/docs/de/benchmark/svelte.md +22 -7
- package/docs/de/benchmark/tanstack.md +20 -16
- package/docs/de/benchmark/vue.md +19 -10
- package/docs/de/chrome_extension.md +130 -0
- package/docs/de/cli/index.md +11 -1
- package/docs/de/cli/infra.md +162 -0
- package/docs/de/cli/init.md +24 -1
- package/docs/de/cli/upgrade.md +125 -0
- package/docs/de/dictionary/html.md +173 -5
- package/docs/de/dictionary/markdown.md +263 -1
- package/docs/de/intlayer_with_analog.md +23 -1
- package/docs/de/intlayer_with_angular_19.md +24 -1
- package/docs/de/intlayer_with_angular_21.md +24 -1
- package/docs/de/intlayer_with_astro.md +24 -1
- package/docs/de/intlayer_with_astro_lit.md +25 -1
- package/docs/de/intlayer_with_astro_preact.md +26 -1
- package/docs/de/intlayer_with_astro_react.md +26 -1
- package/docs/de/intlayer_with_astro_solid.md +26 -1
- package/docs/de/intlayer_with_astro_svelte.md +25 -1
- package/docs/de/intlayer_with_astro_vue.md +25 -1
- package/docs/de/intlayer_with_remix_3.md +22 -1
- package/docs/de/self_hosting.md +404 -227
- package/docs/en/agent_skills.md +29 -1
- package/docs/en/benchmark/nextjs.md +19 -16
- package/docs/en/benchmark/solid.md +26 -9
- package/docs/en/benchmark/svelte.md +22 -7
- package/docs/en/benchmark/tanstack.md +21 -17
- package/docs/en/benchmark/vue.md +20 -11
- package/docs/en/chrome_extension.md +130 -0
- package/docs/en/cli/index.md +11 -1
- package/docs/en/cli/infra.md +175 -0
- package/docs/en/cli/init.md +25 -1
- package/docs/en/cli/upgrade.md +125 -0
- package/docs/en/dictionary/html.md +173 -5
- package/docs/en/dictionary/markdown.md +263 -1
- package/docs/en/intlayer_with_analog.md +23 -1
- package/docs/en/intlayer_with_angular_19.md +24 -1
- package/docs/en/intlayer_with_angular_21.md +24 -1
- package/docs/en/intlayer_with_astro.md +24 -1
- package/docs/en/intlayer_with_astro_lit.md +25 -1
- package/docs/en/intlayer_with_astro_preact.md +26 -1
- package/docs/en/intlayer_with_astro_react.md +26 -1
- package/docs/en/intlayer_with_astro_solid.md +26 -1
- package/docs/en/intlayer_with_astro_svelte.md +25 -1
- package/docs/en/intlayer_with_astro_vue.md +25 -1
- package/docs/en/intlayer_with_remix_3.md +22 -1
- package/docs/en/self_hosting.md +418 -176
- package/docs/en-GB/benchmark/nextjs.md +19 -16
- package/docs/en-GB/benchmark/solid.md +26 -9
- package/docs/en-GB/benchmark/svelte.md +22 -7
- package/docs/en-GB/benchmark/tanstack.md +20 -16
- package/docs/en-GB/benchmark/vue.md +20 -11
- package/docs/en-GB/chrome_extension.md +130 -0
- package/docs/en-GB/cli/index.md +11 -1
- package/docs/en-GB/cli/infra.md +162 -0
- package/docs/en-GB/cli/init.md +24 -1
- package/docs/en-GB/cli/upgrade.md +125 -0
- package/docs/en-GB/dictionary/html.md +173 -5
- package/docs/en-GB/dictionary/markdown.md +263 -1
- package/docs/en-GB/intlayer_with_analog.md +23 -1
- package/docs/en-GB/intlayer_with_angular_19.md +24 -1
- package/docs/en-GB/intlayer_with_angular_21.md +24 -1
- package/docs/en-GB/intlayer_with_astro.md +24 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +25 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +26 -1
- package/docs/en-GB/intlayer_with_astro_react.md +26 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +26 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +25 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +25 -1
- package/docs/en-GB/intlayer_with_remix_3.md +22 -1
- package/docs/en-GB/self_hosting.md +381 -206
- package/docs/es/benchmark/nextjs.md +19 -16
- package/docs/es/benchmark/solid.md +26 -9
- package/docs/es/benchmark/svelte.md +22 -7
- package/docs/es/benchmark/tanstack.md +20 -16
- package/docs/es/benchmark/vue.md +19 -10
- package/docs/es/chrome_extension.md +130 -0
- package/docs/es/cli/index.md +11 -1
- package/docs/es/cli/infra.md +162 -0
- package/docs/es/cli/init.md +24 -1
- package/docs/es/cli/upgrade.md +125 -0
- package/docs/es/dictionary/html.md +173 -5
- package/docs/es/dictionary/markdown.md +263 -1
- package/docs/es/intlayer_with_analog.md +23 -1
- package/docs/es/intlayer_with_angular_19.md +24 -1
- package/docs/es/intlayer_with_angular_21.md +24 -1
- package/docs/es/intlayer_with_astro.md +24 -1
- package/docs/es/intlayer_with_astro_lit.md +25 -1
- package/docs/es/intlayer_with_astro_preact.md +26 -1
- package/docs/es/intlayer_with_astro_react.md +26 -1
- package/docs/es/intlayer_with_astro_solid.md +26 -1
- package/docs/es/intlayer_with_astro_svelte.md +25 -1
- package/docs/es/intlayer_with_astro_vue.md +25 -1
- package/docs/es/intlayer_with_remix_3.md +22 -1
- package/docs/es/self_hosting.md +400 -223
- package/docs/fr/benchmark/nextjs.md +19 -16
- package/docs/fr/benchmark/solid.md +26 -9
- package/docs/fr/benchmark/svelte.md +22 -7
- package/docs/fr/benchmark/tanstack.md +20 -16
- package/docs/fr/benchmark/vue.md +20 -11
- package/docs/fr/chrome_extension.md +130 -0
- package/docs/fr/cli/index.md +11 -1
- package/docs/fr/cli/infra.md +162 -0
- package/docs/fr/cli/init.md +24 -1
- package/docs/fr/cli/upgrade.md +125 -0
- package/docs/fr/dictionary/html.md +173 -5
- package/docs/fr/dictionary/markdown.md +265 -4
- package/docs/fr/intlayer_with_analog.md +23 -1
- package/docs/fr/intlayer_with_angular_19.md +24 -1
- package/docs/fr/intlayer_with_angular_21.md +24 -1
- package/docs/fr/intlayer_with_astro.md +24 -1
- package/docs/fr/intlayer_with_astro_lit.md +25 -1
- package/docs/fr/intlayer_with_astro_preact.md +26 -1
- package/docs/fr/intlayer_with_astro_react.md +26 -1
- package/docs/fr/intlayer_with_astro_solid.md +26 -1
- package/docs/fr/intlayer_with_astro_svelte.md +25 -1
- package/docs/fr/intlayer_with_astro_vue.md +25 -1
- package/docs/fr/intlayer_with_remix_3.md +22 -1
- package/docs/fr/self_hosting.md +401 -224
- package/docs/hi/benchmark/nextjs.md +19 -16
- package/docs/hi/benchmark/solid.md +26 -9
- package/docs/hi/benchmark/svelte.md +22 -7
- package/docs/hi/benchmark/tanstack.md +20 -16
- package/docs/hi/benchmark/vue.md +20 -11
- package/docs/hi/chrome_extension.md +130 -0
- package/docs/hi/cli/index.md +11 -1
- package/docs/hi/cli/infra.md +162 -0
- package/docs/hi/cli/init.md +24 -1
- package/docs/hi/cli/upgrade.md +125 -0
- package/docs/hi/dictionary/html.md +173 -5
- package/docs/hi/dictionary/markdown.md +263 -1
- package/docs/hi/intlayer_with_analog.md +23 -1
- package/docs/hi/intlayer_with_angular_19.md +24 -1
- package/docs/hi/intlayer_with_angular_21.md +24 -1
- package/docs/hi/intlayer_with_astro.md +24 -1
- package/docs/hi/intlayer_with_astro_lit.md +25 -1
- package/docs/hi/intlayer_with_astro_preact.md +26 -1
- package/docs/hi/intlayer_with_astro_react.md +26 -1
- package/docs/hi/intlayer_with_astro_solid.md +26 -1
- package/docs/hi/intlayer_with_astro_svelte.md +25 -1
- package/docs/hi/intlayer_with_astro_vue.md +25 -1
- package/docs/hi/intlayer_with_remix_3.md +22 -1
- package/docs/hi/self_hosting.md +409 -235
- package/docs/id/benchmark/nextjs.md +19 -16
- package/docs/id/benchmark/solid.md +26 -9
- package/docs/id/benchmark/svelte.md +22 -7
- package/docs/id/benchmark/tanstack.md +20 -16
- package/docs/id/benchmark/vue.md +20 -11
- package/docs/id/chrome_extension.md +130 -0
- package/docs/id/cli/index.md +11 -1
- package/docs/id/cli/infra.md +162 -0
- package/docs/id/cli/init.md +24 -1
- package/docs/id/cli/upgrade.md +125 -0
- package/docs/id/dictionary/html.md +173 -5
- package/docs/id/dictionary/markdown.md +263 -1
- package/docs/id/intlayer_with_analog.md +23 -1
- package/docs/id/intlayer_with_angular_19.md +24 -1
- package/docs/id/intlayer_with_angular_21.md +24 -1
- package/docs/id/intlayer_with_astro.md +24 -1
- package/docs/id/intlayer_with_astro_lit.md +25 -1
- package/docs/id/intlayer_with_astro_preact.md +26 -1
- package/docs/id/intlayer_with_astro_react.md +26 -1
- package/docs/id/intlayer_with_astro_solid.md +26 -1
- package/docs/id/intlayer_with_astro_svelte.md +25 -1
- package/docs/id/intlayer_with_astro_vue.md +25 -1
- package/docs/id/intlayer_with_remix_3.md +22 -1
- package/docs/id/self_hosting.md +416 -243
- package/docs/it/benchmark/nextjs.md +19 -16
- package/docs/it/benchmark/solid.md +26 -9
- package/docs/it/benchmark/svelte.md +22 -7
- package/docs/it/benchmark/tanstack.md +20 -16
- package/docs/it/benchmark/vue.md +19 -10
- package/docs/it/chrome_extension.md +130 -0
- package/docs/it/cli/index.md +11 -1
- package/docs/it/cli/infra.md +162 -0
- package/docs/it/cli/init.md +24 -1
- package/docs/it/cli/upgrade.md +125 -0
- package/docs/it/dictionary/html.md +173 -5
- package/docs/it/dictionary/markdown.md +263 -1
- package/docs/it/intlayer_with_analog.md +23 -1
- package/docs/it/intlayer_with_angular_19.md +24 -1
- package/docs/it/intlayer_with_angular_21.md +24 -1
- package/docs/it/intlayer_with_astro.md +24 -1
- package/docs/it/intlayer_with_astro_lit.md +25 -1
- package/docs/it/intlayer_with_astro_preact.md +26 -1
- package/docs/it/intlayer_with_astro_react.md +26 -1
- package/docs/it/intlayer_with_astro_solid.md +26 -1
- package/docs/it/intlayer_with_astro_svelte.md +25 -1
- package/docs/it/intlayer_with_astro_vue.md +25 -1
- package/docs/it/intlayer_with_remix_3.md +22 -1
- package/docs/it/self_hosting.md +412 -237
- package/docs/ja/benchmark/nextjs.md +19 -16
- package/docs/ja/benchmark/solid.md +26 -9
- package/docs/ja/benchmark/svelte.md +22 -7
- package/docs/ja/benchmark/tanstack.md +18 -14
- package/docs/ja/benchmark/vue.md +19 -10
- package/docs/ja/chrome_extension.md +130 -0
- package/docs/ja/cli/index.md +11 -1
- package/docs/ja/cli/infra.md +162 -0
- package/docs/ja/cli/init.md +24 -1
- package/docs/ja/cli/upgrade.md +125 -0
- package/docs/ja/dictionary/html.md +173 -5
- package/docs/ja/dictionary/markdown.md +263 -1
- package/docs/ja/intlayer_with_analog.md +23 -1
- package/docs/ja/intlayer_with_angular_19.md +24 -1
- package/docs/ja/intlayer_with_angular_21.md +24 -1
- package/docs/ja/intlayer_with_astro.md +24 -1
- package/docs/ja/intlayer_with_astro_lit.md +25 -1
- package/docs/ja/intlayer_with_astro_preact.md +26 -1
- package/docs/ja/intlayer_with_astro_react.md +26 -1
- package/docs/ja/intlayer_with_astro_solid.md +26 -1
- package/docs/ja/intlayer_with_astro_svelte.md +25 -1
- package/docs/ja/intlayer_with_astro_vue.md +25 -1
- package/docs/ja/intlayer_with_remix_3.md +22 -1
- package/docs/ja/self_hosting.md +398 -223
- package/docs/ko/benchmark/nextjs.md +19 -16
- package/docs/ko/benchmark/solid.md +26 -9
- package/docs/ko/benchmark/svelte.md +22 -7
- package/docs/ko/benchmark/tanstack.md +20 -16
- package/docs/ko/benchmark/vue.md +20 -11
- package/docs/ko/chrome_extension.md +130 -0
- package/docs/ko/cli/index.md +11 -1
- package/docs/ko/cli/infra.md +162 -0
- package/docs/ko/cli/init.md +24 -1
- package/docs/ko/cli/upgrade.md +126 -0
- package/docs/ko/dictionary/html.md +173 -5
- package/docs/ko/dictionary/markdown.md +263 -1
- package/docs/ko/intlayer_with_analog.md +23 -1
- package/docs/ko/intlayer_with_angular_19.md +24 -1
- package/docs/ko/intlayer_with_angular_21.md +24 -1
- package/docs/ko/intlayer_with_astro.md +24 -1
- package/docs/ko/intlayer_with_astro_lit.md +25 -1
- package/docs/ko/intlayer_with_astro_preact.md +26 -1
- package/docs/ko/intlayer_with_astro_react.md +26 -1
- package/docs/ko/intlayer_with_astro_solid.md +26 -1
- package/docs/ko/intlayer_with_astro_svelte.md +25 -1
- package/docs/ko/intlayer_with_astro_vue.md +25 -1
- package/docs/ko/intlayer_with_remix_3.md +22 -1
- package/docs/ko/self_hosting.md +411 -238
- package/docs/pl/benchmark/nextjs.md +19 -16
- package/docs/pl/benchmark/solid.md +26 -9
- package/docs/pl/benchmark/svelte.md +22 -7
- package/docs/pl/benchmark/tanstack.md +20 -16
- package/docs/pl/benchmark/vue.md +20 -11
- package/docs/pl/chrome_extension.md +130 -0
- package/docs/pl/cli/index.md +11 -1
- package/docs/pl/cli/infra.md +162 -0
- package/docs/pl/cli/init.md +24 -1
- package/docs/pl/cli/upgrade.md +125 -0
- package/docs/pl/dictionary/html.md +173 -5
- package/docs/pl/dictionary/markdown.md +263 -1
- package/docs/pl/intlayer_with_analog.md +23 -1
- package/docs/pl/intlayer_with_angular_19.md +24 -1
- package/docs/pl/intlayer_with_angular_21.md +24 -1
- package/docs/pl/intlayer_with_astro.md +24 -1
- package/docs/pl/intlayer_with_astro_lit.md +25 -1
- package/docs/pl/intlayer_with_astro_preact.md +26 -1
- package/docs/pl/intlayer_with_astro_react.md +26 -1
- package/docs/pl/intlayer_with_astro_solid.md +26 -1
- package/docs/pl/intlayer_with_astro_svelte.md +25 -1
- package/docs/pl/intlayer_with_astro_vue.md +25 -1
- package/docs/pl/intlayer_with_remix_3.md +22 -1
- package/docs/pl/self_hosting.md +408 -233
- package/docs/pt/benchmark/nextjs.md +19 -16
- package/docs/pt/benchmark/solid.md +26 -9
- package/docs/pt/benchmark/svelte.md +22 -7
- package/docs/pt/benchmark/tanstack.md +20 -16
- package/docs/pt/benchmark/vue.md +19 -10
- package/docs/pt/chrome_extension.md +130 -0
- package/docs/pt/cli/index.md +11 -1
- package/docs/pt/cli/infra.md +162 -0
- package/docs/pt/cli/init.md +24 -1
- package/docs/pt/cli/upgrade.md +125 -0
- package/docs/pt/dictionary/html.md +173 -5
- package/docs/pt/dictionary/markdown.md +263 -1
- package/docs/pt/intlayer_with_analog.md +23 -1
- package/docs/pt/intlayer_with_angular_19.md +24 -1
- package/docs/pt/intlayer_with_angular_21.md +24 -1
- package/docs/pt/intlayer_with_astro.md +24 -1
- package/docs/pt/intlayer_with_astro_lit.md +25 -1
- package/docs/pt/intlayer_with_astro_preact.md +26 -1
- package/docs/pt/intlayer_with_astro_react.md +26 -1
- package/docs/pt/intlayer_with_astro_solid.md +26 -1
- package/docs/pt/intlayer_with_astro_svelte.md +25 -1
- package/docs/pt/intlayer_with_astro_vue.md +25 -1
- package/docs/pt/intlayer_with_remix_3.md +22 -1
- package/docs/pt/self_hosting.md +399 -224
- package/docs/ru/benchmark/nextjs.md +19 -16
- package/docs/ru/benchmark/solid.md +26 -9
- package/docs/ru/benchmark/svelte.md +22 -7
- package/docs/ru/benchmark/tanstack.md +20 -16
- package/docs/ru/benchmark/vue.md +20 -11
- package/docs/ru/chrome_extension.md +130 -0
- package/docs/ru/cli/index.md +11 -1
- package/docs/ru/cli/infra.md +162 -0
- package/docs/ru/cli/init.md +24 -1
- package/docs/ru/cli/upgrade.md +125 -0
- package/docs/ru/dictionary/html.md +173 -5
- package/docs/ru/dictionary/markdown.md +263 -1
- package/docs/ru/intlayer_with_analog.md +23 -1
- package/docs/ru/intlayer_with_angular_19.md +24 -1
- package/docs/ru/intlayer_with_angular_21.md +24 -1
- package/docs/ru/intlayer_with_astro.md +24 -1
- package/docs/ru/intlayer_with_astro_lit.md +25 -1
- package/docs/ru/intlayer_with_astro_preact.md +26 -1
- package/docs/ru/intlayer_with_astro_react.md +26 -1
- package/docs/ru/intlayer_with_astro_solid.md +26 -1
- package/docs/ru/intlayer_with_astro_svelte.md +25 -1
- package/docs/ru/intlayer_with_astro_vue.md +25 -1
- package/docs/ru/intlayer_with_remix_3.md +22 -1
- package/docs/ru/self_hosting.md +403 -228
- package/docs/tr/benchmark/nextjs.md +19 -16
- package/docs/tr/benchmark/solid.md +26 -9
- package/docs/tr/benchmark/svelte.md +22 -7
- package/docs/tr/benchmark/tanstack.md +20 -16
- package/docs/tr/benchmark/vue.md +20 -11
- package/docs/tr/chrome_extension.md +130 -0
- package/docs/tr/cli/index.md +11 -1
- package/docs/tr/cli/infra.md +162 -0
- package/docs/tr/cli/init.md +24 -1
- package/docs/tr/cli/upgrade.md +125 -0
- package/docs/tr/dictionary/html.md +173 -5
- package/docs/tr/dictionary/markdown.md +263 -1
- package/docs/tr/intlayer_with_analog.md +23 -1
- package/docs/tr/intlayer_with_angular_19.md +24 -1
- package/docs/tr/intlayer_with_angular_21.md +24 -1
- package/docs/tr/intlayer_with_astro.md +24 -1
- package/docs/tr/intlayer_with_astro_lit.md +25 -1
- package/docs/tr/intlayer_with_astro_preact.md +26 -1
- package/docs/tr/intlayer_with_astro_react.md +26 -1
- package/docs/tr/intlayer_with_astro_solid.md +26 -1
- package/docs/tr/intlayer_with_astro_svelte.md +25 -1
- package/docs/tr/intlayer_with_astro_vue.md +25 -1
- package/docs/tr/intlayer_with_remix_3.md +22 -1
- package/docs/tr/self_hosting.md +410 -234
- package/docs/uk/benchmark/nextjs.md +19 -16
- package/docs/uk/benchmark/solid.md +26 -9
- package/docs/uk/benchmark/svelte.md +22 -7
- package/docs/uk/benchmark/tanstack.md +20 -16
- package/docs/uk/benchmark/vue.md +20 -11
- package/docs/uk/chrome_extension.md +130 -0
- package/docs/uk/cli/index.md +11 -1
- package/docs/uk/cli/infra.md +162 -0
- package/docs/uk/cli/init.md +24 -1
- package/docs/uk/cli/upgrade.md +125 -0
- package/docs/uk/dictionary/html.md +173 -5
- package/docs/uk/dictionary/markdown.md +263 -1
- package/docs/uk/intlayer_with_analog.md +23 -1
- package/docs/uk/intlayer_with_angular_19.md +24 -1
- package/docs/uk/intlayer_with_angular_21.md +24 -1
- package/docs/uk/intlayer_with_astro.md +24 -1
- package/docs/uk/intlayer_with_astro_lit.md +25 -1
- package/docs/uk/intlayer_with_astro_preact.md +26 -1
- package/docs/uk/intlayer_with_astro_react.md +26 -1
- package/docs/uk/intlayer_with_astro_solid.md +26 -1
- package/docs/uk/intlayer_with_astro_svelte.md +25 -1
- package/docs/uk/intlayer_with_astro_vue.md +25 -1
- package/docs/uk/intlayer_with_remix_3.md +22 -1
- package/docs/uk/self_hosting.md +413 -238
- package/docs/vi/benchmark/nextjs.md +19 -16
- package/docs/vi/benchmark/solid.md +26 -9
- package/docs/vi/benchmark/svelte.md +22 -7
- package/docs/vi/benchmark/tanstack.md +20 -16
- package/docs/vi/benchmark/vue.md +20 -11
- package/docs/vi/chrome_extension.md +130 -0
- package/docs/vi/cli/index.md +11 -1
- package/docs/vi/cli/infra.md +162 -0
- package/docs/vi/cli/init.md +24 -1
- package/docs/vi/cli/upgrade.md +125 -0
- package/docs/vi/dictionary/html.md +173 -5
- package/docs/vi/dictionary/markdown.md +263 -1
- package/docs/vi/intlayer_with_analog.md +23 -1
- package/docs/vi/intlayer_with_angular_19.md +24 -1
- package/docs/vi/intlayer_with_angular_21.md +24 -1
- package/docs/vi/intlayer_with_astro.md +24 -1
- package/docs/vi/intlayer_with_astro_lit.md +25 -1
- package/docs/vi/intlayer_with_astro_preact.md +26 -1
- package/docs/vi/intlayer_with_astro_react.md +26 -1
- package/docs/vi/intlayer_with_astro_solid.md +26 -1
- package/docs/vi/intlayer_with_astro_svelte.md +25 -1
- package/docs/vi/intlayer_with_astro_vue.md +25 -1
- package/docs/vi/intlayer_with_remix_3.md +22 -1
- package/docs/vi/self_hosting.md +408 -234
- package/docs/zh/benchmark/nextjs.md +19 -16
- package/docs/zh/benchmark/solid.md +26 -9
- package/docs/zh/benchmark/svelte.md +22 -7
- package/docs/zh/benchmark/tanstack.md +19 -15
- package/docs/zh/benchmark/vue.md +20 -11
- package/docs/zh/chrome_extension.md +130 -0
- package/docs/zh/cli/index.md +11 -1
- package/docs/zh/cli/infra.md +162 -0
- package/docs/zh/cli/init.md +24 -1
- package/docs/zh/cli/upgrade.md +125 -0
- package/docs/zh/dictionary/html.md +172 -5
- package/docs/zh/dictionary/markdown.md +262 -1
- package/docs/zh/intlayer_with_analog.md +23 -1
- package/docs/zh/intlayer_with_angular_19.md +24 -1
- package/docs/zh/intlayer_with_angular_21.md +24 -1
- package/docs/zh/intlayer_with_astro.md +24 -1
- package/docs/zh/intlayer_with_astro_lit.md +25 -1
- package/docs/zh/intlayer_with_astro_preact.md +26 -1
- package/docs/zh/intlayer_with_astro_react.md +26 -1
- package/docs/zh/intlayer_with_astro_solid.md +26 -1
- package/docs/zh/intlayer_with_astro_svelte.md +25 -1
- package/docs/zh/intlayer_with_astro_vue.md +25 -1
- package/docs/zh/intlayer_with_remix_3.md +22 -1
- package/docs/zh/self_hosting.md +410 -237
- package/legal/ar/privacy_notice.md +9 -3
- package/legal/de/privacy_notice.md +9 -3
- package/legal/en/privacy_notice.md +10 -3
- package/legal/en-GB/privacy_notice.md +9 -3
- package/legal/es/privacy_notice.md +9 -3
- package/legal/fr/privacy_notice.md +9 -3
- package/legal/hi/privacy_notice.md +9 -3
- package/legal/id/privacy_notice.md +9 -3
- package/legal/it/privacy_notice.md +9 -3
- package/legal/ja/privacy_notice.md +9 -3
- package/legal/ko/privacy_notice.md +9 -3
- package/legal/pl/privacy_notice.md +9 -3
- package/legal/pt/privacy_notice.md +9 -3
- package/legal/ru/privacy_notice.md +9 -3
- package/legal/tr/privacy_notice.md +9 -3
- package/legal/uk/privacy_notice.md +9 -3
- package/legal/vi/privacy_notice.md +9 -3
- package/legal/zh/privacy_notice.md +9 -3
- package/package.json +6 -6
- package/src/generated/blog.entry.ts +20 -0
- package/src/generated/docs.entry.ts +60 -40
- package/docs/ar/roadmap.md +0 -321
- package/docs/de/roadmap.md +0 -322
- package/docs/en/intlayer_with_astro_vanilla.md +0 -713
- package/docs/en/roadmap.md +0 -325
- package/docs/en-GB/roadmap.md +0 -322
- package/docs/es/roadmap.md +0 -322
- package/docs/fr/roadmap.md +0 -322
- package/docs/hi/roadmap.md +0 -322
- package/docs/id/roadmap.md +0 -325
- package/docs/it/roadmap.md +0 -322
- package/docs/ja/roadmap.md +0 -322
- package/docs/ko/roadmap.md +0 -322
- package/docs/pl/roadmap.md +0 -325
- package/docs/pt/roadmap.md +0 -322
- package/docs/ru/roadmap.md +0 -322
- package/docs/tr/roadmap.md +0 -325
- package/docs/uk/roadmap.md +0 -325
- package/docs/vi/roadmap.md +0 -325
- package/docs/zh/roadmap.md +0 -322
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-21
|
|
3
|
+
updatedAt: 2026-09-21
|
|
4
|
+
title: CLI - Init Infra
|
|
5
|
+
description: 了解如何使用 Intlayer CLI init infra 命令安装桌面应用程序,或使用 Docker(多合一容器或 Docker Compose 堆栈)自行托管 Intlayer CMS。
|
|
6
|
+
keywords:
|
|
7
|
+
- CLI
|
|
8
|
+
- 基础设施
|
|
9
|
+
- 自行托管
|
|
10
|
+
- 桌面应用
|
|
11
|
+
- Docker
|
|
12
|
+
- Docker Compose
|
|
13
|
+
- CMS
|
|
14
|
+
- Intlayer
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- concept
|
|
18
|
+
- cli
|
|
19
|
+
- infra
|
|
20
|
+
history:
|
|
21
|
+
- version: 9.5.6
|
|
22
|
+
date: 2026-09-21
|
|
23
|
+
changes: "添加 init infra 命令"
|
|
24
|
+
author: aymericzip
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Intlayer CLI Init Infra 命令
|
|
28
|
+
|
|
29
|
+
## 描述
|
|
30
|
+
|
|
31
|
+
`init infra` 命令用于在您的机器上设置 Intlayer 基础设施。它会下载适用于您平台的托管安装程序(macOS / Linux 上为 `https://intlayer.org/install.sh`,Windows 上为 `https://intlayer.org/install.ps1`),并在终端中运行,以便完整显示安装程序自身的菜单和进度输出。
|
|
32
|
+
|
|
33
|
+
安装程序会询问您希望如何运行 Intlayer:
|
|
34
|
+
|
|
35
|
+
- **桌面应用**:下载适用于您的操作系统和 CPU 的原生控制面板并打开或安装。桌面版本连接至 Intlayer Cloud 后端。
|
|
36
|
+
- **多合一 Docker**:在由单个卷支持的单个容器中运行控制面板 + API + MongoDB + Redis + MinIO。写入包含生成密钥的 `./intlayer.env` 并拉取 `intlayer/cms-all` 镜像。
|
|
37
|
+
- **Docker Compose**:每个服务一个容器,用于可扩展的自行托管。将 `docker-compose.yml` 和 `.env` 写入 `./intlayer/` 并拉取镜像。
|
|
38
|
+
|
|
39
|
+
托管安装程序是安装流程的唯一真实来源:CLI 运行它而不是重新实现相同步骤,因此 `npx intlayer init infra` 与 `curl -fsSL https://intlayer.org/install.sh | sh` 执行完全相同的操作。
|
|
40
|
+
|
|
41
|
+
## 用法
|
|
42
|
+
|
|
43
|
+
```bash packageManager="npm"
|
|
44
|
+
npx intlayer init infra [options]
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
```bash packageManager="yarn"
|
|
48
|
+
yarn intlayer init infra [options]
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
```bash packageManager="pnpm"
|
|
52
|
+
pnpm intlayer init infra [options]
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
```bash packageManager="bun"
|
|
56
|
+
bun x intlayer init infra [options]
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
`npx intlayer init --interactive` 的检查列表中也提供了相同的步骤,位于 **基础设施 (桌面应用 / 自行托管)** 下。
|
|
60
|
+
|
|
61
|
+
## 选项
|
|
62
|
+
|
|
63
|
+
- `-m, --mode <mode>` - 可选。跳过安装程序菜单并直接运行特定模式。接受的值:`desktop`、`docker`(多合一)或 `compose`。任何其他值都会退出并显示错误列出接受的模式。
|
|
64
|
+
|
|
65
|
+
## 示例
|
|
66
|
+
|
|
67
|
+
### 以交互方式选择模式
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx intlayer init infra
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 安装桌面应用
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npx intlayer init infra --mode desktop
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 使用多合一容器自行托管
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
npx intlayer init infra --mode docker
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### 使用 Docker Compose 自行托管
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
npx intlayer init infra --mode compose
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## 示例输出
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npx intlayer init infra --mode compose
|
|
95
|
+
◇ Installer downloaded
|
|
96
|
+
▸ Fetching docker-compose.yml into ./intlayer
|
|
97
|
+
▸ Writing ./intlayer/.env
|
|
98
|
+
▸ Pulling images
|
|
99
|
+
|
|
100
|
+
Everything is installed. Two steps left.
|
|
101
|
+
|
|
102
|
+
1. Configure a mailer in:
|
|
103
|
+
|
|
104
|
+
./intlayer/.env
|
|
105
|
+
|
|
106
|
+
Either RESEND_API_KEY (resend.com) or the MAIL_SMTP_* block — the first
|
|
107
|
+
account cannot be verified without a working mailer.
|
|
108
|
+
2. Start the stack:
|
|
109
|
+
|
|
110
|
+
cd ./intlayer && docker compose up -d
|
|
111
|
+
|
|
112
|
+
Then open http://localhost:3000 — first boot initialises the
|
|
113
|
+
datastores, so give it a minute. The first account you create becomes the
|
|
114
|
+
super admin.
|
|
115
|
+
|
|
116
|
+
Logs docker compose logs -f
|
|
117
|
+
Stop docker compose down
|
|
118
|
+
Upgrade docker compose pull && docker compose up -d
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 安装程序设置
|
|
122
|
+
|
|
123
|
+
安装程序会读取一些环境变量,CLI 会原样传递这些变量。在运行命令前请在 shell 中进行设置:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
INTLAYER_COMPOSE_DIR=./cms npx intlayer init infra --mode compose
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
| 变量 | 默认值 | 适用于 | 描述 |
|
|
130
|
+
| ------------------------- | ------------------------- | ------- | -------------------------------------------------- |
|
|
131
|
+
| `INTLAYER_MODE` | _(询问)_ | 全部 | `desktop`、`docker` 或 `compose`,与 `--mode` 相同 |
|
|
132
|
+
| `INTLAYER_DOWNLOAD_DIR` | `~/Downloads` | desktop | 应用安装程序保存位置 |
|
|
133
|
+
| `INTLAYER_IMAGE` | `intlayer/cms-all:latest` | docker | 要拉取的多合一镜像 |
|
|
134
|
+
| `INTLAYER_ENV_FILE` | `./intlayer.env` | docker | 环境文件写入位置 |
|
|
135
|
+
| `INTLAYER_CONTAINER_NAME` | `intlayer` | docker | 容器名称 |
|
|
136
|
+
| `INTLAYER_DATA_VOLUME` | `intlayer-data` | docker | 挂载在 `/data` 的具名卷 |
|
|
137
|
+
| `INTLAYER_APP_PORT` | `3000` | docker | 控制面板主机端口 |
|
|
138
|
+
| `INTLAYER_API_PORT` | `3100` | docker | API 主机端口 |
|
|
139
|
+
| `INTLAYER_S3_PORT` | `9000` | docker | MinIO S3 API 主机端口 |
|
|
140
|
+
| `INTLAYER_CONSOLE_PORT` | `9001` | docker | MinIO 控制台主机端口 |
|
|
141
|
+
| `INTLAYER_COMPOSE_DIR` | `./intlayer` | compose | 写入 `docker-compose.yml` 和 `.env` 的位置 |
|
|
142
|
+
| `INTLAYER_SELFHOST_REF` | `main` | 两者 | 获取 compose 文件和 env 模板的 Git ref |
|
|
143
|
+
|
|
144
|
+
> 端口变量仅更改映射的 **主机** 端。已发布的镜像在控制面板包中预编译了 `http://localhost:3000`、`http://localhost:3100` 和 `http://localhost:9000`,因此除非您构建自己的镜像,否则请保留默认值:请参阅[自行托管指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/self_hosting.md#limitations)。
|
|
145
|
+
|
|
146
|
+
## 环境要求
|
|
147
|
+
|
|
148
|
+
- **桌面应用** 需要 [Node.js](https://nodejs.org):该应用内嵌了控制面板服务器,并使用机器自身的 `node` 二进制文件启动。
|
|
149
|
+
- **Docker 模式** 需要 [Docker](https://docs.docker.com/get-docker/)(Windows 上需要带有 WSL 2 后端的 Docker Desktop)。Compose 模式还需要 `docker compose` 插件。
|
|
150
|
+
|
|
151
|
+
## 注意事项
|
|
152
|
+
|
|
153
|
+
- 重新运行该命令是安全的:现有的环境文件绝不会被覆盖,因此它也作为升级路径(安装程序会拉取最新镜像并保留您的密钥)。
|
|
154
|
+
- 安装程序会被下载到临时目录中,无论结果如何,退出时都会被删除。
|
|
155
|
+
- 该命令的退出代码即为安装程序的退出代码。如果下载本身失败,CLI 将打印等效的 `curl … | sh`(或 `irm … | iex`)命令,以便您可以直接运行安装程序。
|
|
156
|
+
- Docker 模式仍需要邮件发送服务来发送登录邮件。安装程序完成后,请在生成的环境文件中配置 Resend 或 SMTP:请参阅[全局邮件程序](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/self_hosting.md#global-mailer)。
|
|
157
|
+
|
|
158
|
+
## 相关内容
|
|
159
|
+
|
|
160
|
+
- [自行托管指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/self_hosting.md) - 各模式的架构、首次运行步骤和限制
|
|
161
|
+
- [初始化 Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/init.md) - 父级 `init` 命令及其交互式检查清单
|
|
162
|
+
- [Intlayer CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md) - 您刚安装的控制面板的功能
|
package/docs/zh/cli/init.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-12-30
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-09-21
|
|
4
4
|
title: 初始化 Intlayer
|
|
5
5
|
description: 了解如何在您的项目中初始化 Intlayer。
|
|
6
6
|
keywords:
|
|
@@ -14,6 +14,9 @@ slugs:
|
|
|
14
14
|
- cli
|
|
15
15
|
- init
|
|
16
16
|
history:
|
|
17
|
+
- version: 9.5.6
|
|
18
|
+
date: 2026-09-21
|
|
19
|
+
changes: "添加 init infra 子命令"
|
|
17
20
|
- version: 8.6.4
|
|
18
21
|
date: 2026-03-31
|
|
19
22
|
changes: "添加 --no-gitignore 选项"
|
|
@@ -125,6 +128,26 @@ bun x intlayer init --no-gitignore
|
|
|
125
128
|
|
|
126
129
|
这将设置所有配置文件,但不会修改您的 `.gitignore`。
|
|
127
130
|
|
|
131
|
+
### 设置基础设施(桌面应用或自行托管):
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
npx intlayer init infra
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
下载并运行在线安装程序(macOS / Linux 上为 `https://intlayer.org/install.sh`,Windows 上为 `install.ps1`),它会询问您希望如何运行 Intlayer:
|
|
138
|
+
|
|
139
|
+
- **桌面应用** - 在您的机器上安装原生控制面板,连接到 Intlayer Cloud。
|
|
140
|
+
- **多合一 Docker** - 在单个容器中包含控制面板 + API + MongoDB + Redis + MinIO。
|
|
141
|
+
- **Docker Compose** - 每个服务一个容器,用于可扩展的自行托管。
|
|
142
|
+
|
|
143
|
+
使用 `--mode` 跳过菜单:
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
npx intlayer init infra --mode compose
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
`npx intlayer init --interactive` 也提供了相同的步骤。有关安装程序设置,请参阅 [`init infra` 参考](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/infra.md),有关各模式设置的内容,请参阅[自行托管指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/self_hosting.md)。
|
|
150
|
+
|
|
128
151
|
## 输出示例:
|
|
129
152
|
|
|
130
153
|
```bash
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-09-23
|
|
3
|
+
updatedAt: 2026-09-23
|
|
4
|
+
title: CLI - 升级 Intlayer 软件包
|
|
5
|
+
description: 了解如何使用 Intlayer CLI upgrade 命令列出项目或 monorepo 中的每个 Intlayer 软件包,并将它们升级到最新版本。
|
|
6
|
+
keywords:
|
|
7
|
+
- CLI
|
|
8
|
+
- Upgrade
|
|
9
|
+
- 升级
|
|
10
|
+
- Packages
|
|
11
|
+
- Monorepo
|
|
12
|
+
- Intlayer
|
|
13
|
+
slugs:
|
|
14
|
+
- doc
|
|
15
|
+
- concept
|
|
16
|
+
- cli
|
|
17
|
+
- upgrade
|
|
18
|
+
history:
|
|
19
|
+
- version: 9.5.8
|
|
20
|
+
date: 2026-09-23
|
|
21
|
+
changes: "添加 upgrade 命令"
|
|
22
|
+
author: aymericzip
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# 升级 Intlayer 软件包
|
|
26
|
+
|
|
27
|
+
```bash packageManager="npm"
|
|
28
|
+
npx intlayer upgrade
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
```bash packageManager="yarn"
|
|
32
|
+
yarn intlayer upgrade
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
```bash packageManager="pnpm"
|
|
36
|
+
pnpm intlayer upgrade
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
```bash packageManager="bun"
|
|
40
|
+
bun x intlayer upgrade
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
`upgrade` 命令会列出项目中每个 `package.json`(包括 monorepo 工作区)中声明的 Intlayer 软件包,并将它们升级到已发布的最新版本。它独立运行与 `intlayer init` 相同的软件包升级步骤。
|
|
44
|
+
|
|
45
|
+
## 参数:
|
|
46
|
+
|
|
47
|
+
- `--project-root [projectRoot]` - 可选。项目根目录。默认情况下,命令从当前工作目录上方最近的 `package.json` 开始。
|
|
48
|
+
- `--dry-run` - 可选。列出软件包及其目标版本,而不修改任何文件。
|
|
49
|
+
- `--tag <tag>` - 可选。要升级到的 npm dist-tag(例如 `canary`)。默认为 `latest`。
|
|
50
|
+
|
|
51
|
+
## 它的工作原理:
|
|
52
|
+
|
|
53
|
+
1. **列出 Intlayer 软件包** - 扫描项目的每个 `package.json`(跳过 `node_modules` 和构建输出),查找 `intlayer`、`@intlayer/*`、`*-intlayer` 和 `intlayer-*` 依赖项及 devDependencies。
|
|
54
|
+
2. **获取目标版本** - 从 npm registry 读取每个软件包所选 dist-tag(默认为 `latest`)的版本。
|
|
55
|
+
3. **重写版本范围** - 就地更新每个过期的版本范围,保留其操作符(`^`、`~` 或无)和文件缩进。
|
|
56
|
+
4. **单次安装** - 使用拥有锁文件的包管理器,从工作区根目录(带有锁文件的最近目录)执行一次安装:
|
|
57
|
+
|
|
58
|
+
| 锁文件 | 命令 |
|
|
59
|
+
| ------------------------------ | -------------- |
|
|
60
|
+
| `bun.lock` / `bun.lockb` | `bun install` |
|
|
61
|
+
| `pnpm-lock.yaml` | `pnpm install` |
|
|
62
|
+
| `yarn.lock` | `yarn install` |
|
|
63
|
+
| `package-lock.json` 或无锁文件 | `npm install` |
|
|
64
|
+
|
|
65
|
+
如果不存在锁文件,则在回退到 npm 之前会先使用 `package.json` 中的 `packageManager` 字段(例如 `"bun@1.2.0"`)。
|
|
66
|
+
|
|
67
|
+
未指向 registry 的范围(例如 `workspace:*`、`file:`、`link:`、`catalog:` 或 git URL)绝不会被修改。
|
|
68
|
+
|
|
69
|
+
## 示例:
|
|
70
|
+
|
|
71
|
+
### 列出可用的升级而不应用它们:
|
|
72
|
+
|
|
73
|
+
```bash packageManager="npm"
|
|
74
|
+
npx intlayer upgrade --dry-run
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
```bash packageManager="yarn"
|
|
78
|
+
yarn intlayer upgrade --dry-run
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
```bash packageManager="pnpm"
|
|
82
|
+
pnpm intlayer upgrade --dry-run
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
```bash packageManager="bun"
|
|
86
|
+
bun x intlayer upgrade --dry-run
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 升级到 canary 版本:
|
|
90
|
+
|
|
91
|
+
```bash packageManager="npm"
|
|
92
|
+
npx intlayer upgrade --tag canary
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
```bash packageManager="yarn"
|
|
96
|
+
yarn intlayer upgrade --tag canary
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
```bash packageManager="pnpm"
|
|
100
|
+
pnpm intlayer upgrade --tag canary
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
```bash packageManager="bun"
|
|
104
|
+
bun x intlayer upgrade --tag canary
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## 示例输出:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
npx intlayer upgrade
|
|
111
|
+
Intlayer packages:
|
|
112
|
+
package.json
|
|
113
|
+
intlayer ^9.0.0 → ^9.5.7
|
|
114
|
+
apps/web/package.json
|
|
115
|
+
next-intlayer ^9.5.7 (latest)
|
|
116
|
+
vite-intlayer ~9.2.0 → ~9.5.7
|
|
117
|
+
Running bun install...
|
|
118
|
+
✓ Upgraded 2 Intlayer dependencies to latest
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 注意事项:
|
|
122
|
+
|
|
123
|
+
- 从代码仓库根目录运行该命令以升级所有工作区。从某个工作区运行它以仅升级该工作区。
|
|
124
|
+
- 无法获取版本的软件包(离线、私有或未发布的软件包)会被列出并保持不变。
|
|
125
|
+
- 如果安装失败,已升级的范围会保留在 `package.json` 中。请手动运行包管理器的安装命令。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-01-20
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-21
|
|
4
4
|
title: HTML 内容
|
|
5
5
|
description: 了解如何在 Intlayer 中声明和使用带有自定义组件的 HTML 内容。按照本指南在你的国际化项目中嵌入具有动态组件替换功能的丰富类 HTML 内容。
|
|
6
6
|
keywords:
|
|
@@ -13,6 +13,8 @@ keywords:
|
|
|
13
13
|
- React
|
|
14
14
|
- Vue
|
|
15
15
|
- Svelte
|
|
16
|
+
- Remix
|
|
17
|
+
- Astro
|
|
16
18
|
slugs:
|
|
17
19
|
- doc
|
|
18
20
|
- concept
|
|
@@ -235,6 +237,83 @@ const myContent = html(
|
|
|
235
237
|
```
|
|
236
238
|
|
|
237
239
|
</Tab>
|
|
240
|
+
<Tab label="Remix" value="remix">
|
|
241
|
+
在 Remix 3 中,HTML 节点解析为 HTML 字符串。使用 Remix JSX 的 `innerHTML` 属性注入它,或在 `html-template` 视图中使用 `html.raw`。
|
|
242
|
+
|
|
243
|
+
```tsx fileName="src/views/home.tsx"
|
|
244
|
+
import { useIntlayer } from "remix-intlayer";
|
|
245
|
+
|
|
246
|
+
export const HomePage = () => () => {
|
|
247
|
+
const { myHtmlContent } = useIntlayer("app");
|
|
248
|
+
|
|
249
|
+
return <div innerHTML={myHtmlContent.value} />;
|
|
250
|
+
};
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
```ts fileName="src/views/home.ts"
|
|
254
|
+
import { html } from "remix/html-template";
|
|
255
|
+
import { useIntlayer } from "remix-intlayer";
|
|
256
|
+
|
|
257
|
+
export const renderHomePage = () => {
|
|
258
|
+
const { myHtmlContent } = useIntlayer("app");
|
|
259
|
+
|
|
260
|
+
return html.raw`<div>${myHtmlContent.value}</div>`;
|
|
261
|
+
};
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
> Remix 默认会转义插值。`innerHTML` 和 `html.raw` 是两个例外选项,这正是 HTML 字符串所需要的。
|
|
265
|
+
|
|
266
|
+
使用 `.use()` 方法覆盖标签或映射自定义组件。覆盖是返回 HTML 字符串的函数:
|
|
267
|
+
|
|
268
|
+
```tsx
|
|
269
|
+
<div
|
|
270
|
+
innerHTML={myHtmlContent.use({
|
|
271
|
+
p: ({ children }) => `<p class="prose">${children}</p>`,
|
|
272
|
+
CustomLink: ({ children }) => `<a href="/details">${children}</a>`,
|
|
273
|
+
})}
|
|
274
|
+
/>
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
</Tab>
|
|
278
|
+
<Tab label="Astro" value="astro">
|
|
279
|
+
在 Astro 中,HTML 节点解析为 HTML 字符串。使用模板中的 `set:html` 指令注入它,或在客户端 `<script>` 中使用 `innerHTML`。
|
|
280
|
+
|
|
281
|
+
```astro fileName="src/pages/index.astro"
|
|
282
|
+
---
|
|
283
|
+
import { useIntlayer } from "astro-intlayer";
|
|
284
|
+
|
|
285
|
+
const { myHtmlContent } = useIntlayer("app");
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
<div set:html={myHtmlContent.value} />
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
```astro fileName="src/components/Content.astro"
|
|
292
|
+
<div id="content"></div>
|
|
293
|
+
|
|
294
|
+
<script>
|
|
295
|
+
import { useIntlayer } from "astro-intlayer";
|
|
296
|
+
|
|
297
|
+
const { myHtmlContent } = useIntlayer("app");
|
|
298
|
+
|
|
299
|
+
document.querySelector("#content")!.innerHTML = myHtmlContent.value;
|
|
300
|
+
</script>
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
> Astro 默认会转义 `{表达式}`。`set:html` 是例外选项,这正是 HTML 字符串所需要的。
|
|
304
|
+
|
|
305
|
+
使用 `.use()` 方法覆盖标签或映射自定义组件。覆盖是返回 HTML 字符串的函数:
|
|
306
|
+
|
|
307
|
+
```astro
|
|
308
|
+
<div
|
|
309
|
+
set:html={myHtmlContent.use({
|
|
310
|
+
p: ({ children }) => `<p class="prose">${children}</p>`,
|
|
311
|
+
CustomLink: ({ children }) => `<a href="/details">${children}</a>`,
|
|
312
|
+
})}
|
|
313
|
+
/>
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
</Tab>
|
|
238
317
|
</Tabs>
|
|
239
318
|
|
|
240
319
|
## 使用 `HTMLProvider` 的全局配置
|
|
@@ -470,6 +549,40 @@ const myContent = html(
|
|
|
470
549
|
> 动态导入 HTML 渲染器是减小应用程序Bundle 大小的好方法。
|
|
471
550
|
|
|
472
551
|
</Tab>
|
|
552
|
+
<Tab label="Remix" value="remix">
|
|
553
|
+
|
|
554
|
+
Remix 没有组件树来承载 provider,因此配置在服务器启动时作为单例安装一次。它配置由 `useHTMLRenderer()` 返回的渲染器。由 `useIntlayer` 返回的 `html` 节点按原样渲染;通过 `.use()` 为每个节点覆盖其标签。
|
|
555
|
+
|
|
556
|
+
```typescript fileName="src/router.ts"
|
|
557
|
+
import { installIntlayerHTML } from "remix-intlayer/html";
|
|
558
|
+
|
|
559
|
+
installIntlayerHTML({
|
|
560
|
+
renderHTML: (html) => html.replaceAll("<p>", '<p class="prose">'),
|
|
561
|
+
});
|
|
562
|
+
```
|
|
563
|
+
|
|
564
|
+
> 使用 `installIntlayerHTMLDynamic(async () => …)` 延迟加载渲染器本身;加载器仅在第一次调用时运行。
|
|
565
|
+
|
|
566
|
+
</Tab>
|
|
567
|
+
<Tab label="Astro" value="astro">
|
|
568
|
+
|
|
569
|
+
Astro 没有组件树来承载 provider,因此配置在中间件(服务器)和客户端 `<script>`(浏览器)中作为单例安装一次。它配置由 `useHTMLRenderer()` 返回的渲染器。由 `useIntlayer` 返回的 `html` 节点按原样渲染;通过 `.use()` 为每个节点覆盖其标签。
|
|
570
|
+
|
|
571
|
+
```typescript fileName="src/middleware.ts"
|
|
572
|
+
import { installIntlayerHTML } from "astro-intlayer/html";
|
|
573
|
+
import { defineMiddleware } from "astro:middleware";
|
|
574
|
+
|
|
575
|
+
// 服务器启动时运行一次;Intlayer 中间件本身由集成在此文件之前注册。
|
|
576
|
+
installIntlayerHTML({
|
|
577
|
+
renderHTML: (html) => html.replaceAll("<p>", '<p class="prose">'),
|
|
578
|
+
});
|
|
579
|
+
|
|
580
|
+
export const onRequest = defineMiddleware((_context, next) => next());
|
|
581
|
+
```
|
|
582
|
+
|
|
583
|
+
> 使用 `installIntlayerHTMLDynamic(async () => …)` 延迟加载渲染器本身;加载器仅在第一次调用时运行。
|
|
584
|
+
|
|
585
|
+
</Tab>
|
|
473
586
|
</Tabs>
|
|
474
587
|
|
|
475
588
|
### 手动渲染与高级工具
|
|
@@ -642,15 +755,69 @@ const myContent = html(
|
|
|
642
755
|
```
|
|
643
756
|
|
|
644
757
|
</Tab>
|
|
758
|
+
<Tab label="Remix" value="remix">
|
|
759
|
+
#### `useHTMLRenderer()` Hook
|
|
760
|
+
|
|
761
|
+
获取由 `installIntlayerHTML()` 预配置的渲染器函数。它返回一个 HTML 字符串。
|
|
762
|
+
|
|
763
|
+
```tsx
|
|
764
|
+
import { useHTMLRenderer } from "remix-intlayer/html";
|
|
765
|
+
|
|
766
|
+
const renderHTML = useHTMLRenderer();
|
|
767
|
+
|
|
768
|
+
return <div innerHTML={renderHTML("<p>Hello <strong>World</strong></p>")} />;
|
|
769
|
+
```
|
|
770
|
+
|
|
771
|
+
#### `renderHTML()` 实用工具
|
|
772
|
+
|
|
773
|
+
忽略全局配置的独立实用工具。
|
|
774
|
+
|
|
775
|
+
```tsx
|
|
776
|
+
import { renderHTML } from "remix-intlayer/html";
|
|
777
|
+
|
|
778
|
+
const html = renderHTML("<p>Hello</p>");
|
|
779
|
+
```
|
|
780
|
+
|
|
781
|
+
</Tab>
|
|
782
|
+
<Tab label="Astro" value="astro">
|
|
783
|
+
#### `useHTMLRenderer()` Hook
|
|
784
|
+
|
|
785
|
+
获取由 `installIntlayerHTML()` 预配置的渲染器函数。它返回一个 HTML 字符串。
|
|
786
|
+
|
|
787
|
+
```astro
|
|
788
|
+
---
|
|
789
|
+
import { useHTMLRenderer } from "astro-intlayer/html";
|
|
790
|
+
|
|
791
|
+
const renderHTML = useHTMLRenderer();
|
|
792
|
+
---
|
|
793
|
+
|
|
794
|
+
<div set:html={renderHTML("<p>Hello <strong>World</strong></p>")} />
|
|
795
|
+
```
|
|
796
|
+
|
|
797
|
+
#### `renderHTML()` 实用工具
|
|
798
|
+
|
|
799
|
+
忽略全局配置的独立实用工具。
|
|
800
|
+
|
|
801
|
+
```astro
|
|
802
|
+
---
|
|
803
|
+
import { renderHTML } from "astro-intlayer/html";
|
|
804
|
+
|
|
805
|
+
const html = renderHTML("<p>Hello</p>");
|
|
806
|
+
---
|
|
807
|
+
|
|
808
|
+
<div set:html={html} />
|
|
809
|
+
```
|
|
810
|
+
|
|
811
|
+
</Tab>
|
|
645
812
|
</Tabs>
|
|
646
813
|
|
|
647
814
|
## 选项参考
|
|
648
815
|
|
|
649
816
|
这些选项可以传递给 `HTMLProvider`、`HTMLRenderer`、`useHTMLRenderer` 和 `renderHTML`。
|
|
650
817
|
|
|
651
|
-
| 选项 | 类型 | 默认 | 说明
|
|
652
|
-
| :----------- | :-------------------- | :----- |
|
|
653
|
-
| `components` | `Record<string, any>` | `{}` | 一个将 HTML 标签或自定义组件名称映射到对应组件的映射表。
|
|
654
|
-
| `renderHTML` | `Function` | `null` |
|
|
818
|
+
| 选项 | 类型 | 默认 | 说明 |
|
|
819
|
+
| :----------- | :-------------------- | :----- | :------------------------------------------------------------------------------- |
|
|
820
|
+
| `components` | `Record<string, any>` | `{}` | 一个将 HTML 标签或自定义组件名称映射到对应组件的映射表。 |
|
|
821
|
+
| `renderHTML` | `Function` | `null` | 完全替换默认 HTML 解析器的自定义渲染函数(Vue、Svelte、Remix 和 Astro 提供者)。 |
|
|
655
822
|
|
|
656
823
|
> 注意:对于 React 和 Preact,标准 HTML 标签会自动提供。只有当你想覆盖它们或添加自定义组件时,才需要传入 `components` prop。
|