@intlayer/docs 8.3.0 → 8.3.2
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/i18n_using_next-i18next.md +1 -0
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +0 -29
- package/blog/uk/internationalization_and_SEO.md +1 -1
- package/docs/ar/compiler.md +84 -49
- package/docs/ar/configuration.md +82 -58
- package/docs/ar/intlayer_with_analog.md +2 -2
- package/docs/ar/intlayer_with_angular.md +2 -2
- package/docs/ar/intlayer_with_astro.md +2 -2
- package/docs/ar/intlayer_with_lynx+react.md +2 -2
- package/docs/ar/intlayer_with_nextjs_16.md +174 -1
- package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +4 -7
- package/docs/ar/intlayer_with_react_native+expo.md +2 -2
- package/docs/ar/intlayer_with_react_router_v7.md +224 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ar/intlayer_with_svelte_kit.md +175 -2
- package/docs/ar/intlayer_with_tanstack.md +176 -1
- package/docs/ar/intlayer_with_vite+preact.md +176 -3
- package/docs/ar/intlayer_with_vite+react.md +174 -1
- package/docs/ar/intlayer_with_vite+solid.md +176 -3
- package/docs/ar/intlayer_with_vite+svelte.md +176 -3
- package/docs/ar/intlayer_with_vite+vue.md +178 -5
- package/docs/ar/vs_code_extension.md +1 -1
- package/docs/de/compiler.md +83 -48
- package/docs/de/configuration.md +417 -214
- package/docs/de/intlayer_with_analog.md +2 -2
- package/docs/de/intlayer_with_angular.md +2 -2
- package/docs/de/intlayer_with_astro.md +2 -2
- package/docs/de/intlayer_with_lynx+react.md +2 -2
- package/docs/de/intlayer_with_nextjs_16.md +176 -1
- package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
- package/docs/de/intlayer_with_react_native+expo.md +2 -2
- package/docs/de/intlayer_with_react_router_v7.md +225 -2
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
- package/docs/de/intlayer_with_svelte_kit.md +158 -2
- package/docs/de/intlayer_with_tanstack.md +159 -1
- package/docs/de/intlayer_with_vite+preact.md +159 -3
- package/docs/de/intlayer_with_vite+react.md +157 -1
- package/docs/de/intlayer_with_vite+solid.md +161 -5
- package/docs/de/intlayer_with_vite+svelte.md +159 -3
- package/docs/de/intlayer_with_vite+vue.md +159 -3
- package/docs/de/vs_code_extension.md +1 -1
- package/docs/en/compiler.md +60 -33
- package/docs/en/configuration.md +82 -77
- package/docs/en/intlayer_with_analog.md +1 -1
- package/docs/en/intlayer_with_angular.md +1 -1
- package/docs/en/intlayer_with_astro.md +1 -1
- package/docs/en/intlayer_with_lynx+react.md +1 -1
- package/docs/en/intlayer_with_nextjs_16.md +176 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
- package/docs/en/intlayer_with_react_native+expo.md +1 -1
- package/docs/en/intlayer_with_react_router_v7.md +159 -0
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
- package/docs/en/intlayer_with_svelte_kit.md +159 -0
- package/docs/en/intlayer_with_tanstack.md +160 -1
- package/docs/en/intlayer_with_vite+preact.md +160 -1
- package/docs/en/intlayer_with_vite+react.md +159 -0
- package/docs/en/intlayer_with_vite+solid.md +149 -28
- package/docs/en/intlayer_with_vite+svelte.md +160 -1
- package/docs/en/intlayer_with_vite+vue.md +143 -42
- package/docs/en/vs_code_extension.md +1 -1
- package/docs/en-GB/compiler.md +66 -34
- package/docs/en-GB/configuration.md +80 -57
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +1 -1
- package/docs/en-GB/intlayer_with_lynx+react.md +1 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react.md +1 -1
- package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
- package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +2 -2
- package/docs/en-GB/vs_code_extension.md +1 -1
- package/docs/es/compiler.md +83 -48
- package/docs/es/configuration.md +412 -208
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_analog.md +2 -2
- package/docs/es/intlayer_with_angular.md +2 -2
- package/docs/es/intlayer_with_astro.md +2 -2
- package/docs/es/intlayer_with_express.md +1 -1
- package/docs/es/intlayer_with_fastify.md +1 -1
- package/docs/es/intlayer_with_hono.md +1 -1
- package/docs/es/intlayer_with_lynx+react.md +2 -2
- package/docs/es/intlayer_with_nestjs.md +1 -1
- package/docs/es/intlayer_with_nextjs_16.md +176 -3
- package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_native+expo.md +2 -2
- package/docs/es/intlayer_with_react_router_v7.md +227 -4
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
- package/docs/es/intlayer_with_svelte_kit.md +158 -2
- package/docs/es/intlayer_with_tanstack.md +160 -2
- package/docs/es/intlayer_with_vite+preact.md +164 -8
- package/docs/es/intlayer_with_vite+react.md +160 -4
- package/docs/es/intlayer_with_vite+solid.md +165 -9
- package/docs/es/intlayer_with_vite+svelte.md +159 -3
- package/docs/es/intlayer_with_vite+vue.md +169 -13
- package/docs/es/vs_code_extension.md +1 -1
- package/docs/fr/compiler.md +81 -46
- package/docs/fr/configuration.md +351 -149
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_analog.md +2 -2
- package/docs/fr/intlayer_with_angular.md +2 -2
- package/docs/fr/intlayer_with_astro.md +2 -2
- package/docs/fr/intlayer_with_express.md +1 -1
- package/docs/fr/intlayer_with_fastify.md +1 -1
- package/docs/fr/intlayer_with_hono.md +1 -1
- package/docs/fr/intlayer_with_lynx+react.md +2 -2
- package/docs/fr/intlayer_with_nestjs.md +1 -1
- package/docs/fr/intlayer_with_nextjs_16.md +183 -7
- package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
- package/docs/fr/intlayer_with_react_native+expo.md +2 -2
- package/docs/fr/intlayer_with_react_router_v7.md +229 -3
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
- package/docs/fr/intlayer_with_svelte_kit.md +158 -2
- package/docs/fr/intlayer_with_tanstack.md +159 -1
- package/docs/fr/intlayer_with_vite+preact.md +166 -10
- package/docs/fr/intlayer_with_vite+react.md +163 -7
- package/docs/fr/intlayer_with_vite+solid.md +165 -9
- package/docs/fr/intlayer_with_vite+svelte.md +159 -3
- package/docs/fr/intlayer_with_vite+vue.md +168 -12
- package/docs/fr/vs_code_extension.md +1 -1
- package/docs/hi/compiler.md +81 -46
- package/docs/hi/configuration.md +89 -65
- package/docs/hi/intlayer_with_analog.md +1 -1
- package/docs/hi/intlayer_with_angular.md +2 -2
- package/docs/hi/intlayer_with_astro.md +2 -2
- package/docs/hi/intlayer_with_lynx+react.md +2 -2
- package/docs/hi/intlayer_with_nextjs_16.md +174 -1
- package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/hi/intlayer_with_react_native+expo.md +2 -2
- package/docs/hi/intlayer_with_react_router_v7.md +224 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/hi/intlayer_with_svelte_kit.md +158 -2
- package/docs/hi/intlayer_with_tanstack.md +159 -1
- package/docs/hi/intlayer_with_vite+preact.md +159 -3
- package/docs/hi/intlayer_with_vite+react.md +157 -1
- package/docs/hi/intlayer_with_vite+solid.md +159 -3
- package/docs/hi/intlayer_with_vite+svelte.md +159 -3
- package/docs/hi/intlayer_with_vite+vue.md +159 -3
- package/docs/hi/vs_code_extension.md +1 -1
- package/docs/id/compiler.md +84 -51
- package/docs/id/configuration.md +85 -65
- package/docs/id/intlayer_with_analog.md +2 -2
- package/docs/id/intlayer_with_angular.md +2 -2
- package/docs/id/intlayer_with_astro.md +2 -2
- package/docs/id/intlayer_with_lynx+react.md +2 -2
- package/docs/id/intlayer_with_nextjs_16.md +174 -1
- package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/id/intlayer_with_react_native+expo.md +2 -2
- package/docs/id/intlayer_with_react_router_v7.md +224 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/id/intlayer_with_svelte_kit.md +158 -2
- package/docs/id/intlayer_with_tanstack.md +159 -1
- package/docs/id/intlayer_with_vite+preact.md +159 -3
- package/docs/id/intlayer_with_vite+react.md +159 -3
- package/docs/id/intlayer_with_vite+solid.md +159 -3
- package/docs/id/intlayer_with_vite+svelte.md +159 -3
- package/docs/id/intlayer_with_vite+vue.md +159 -3
- package/docs/id/vs_code_extension.md +1 -1
- package/docs/it/compiler.md +81 -46
- package/docs/it/configuration.md +410 -208
- package/docs/it/intlayer_with_analog.md +2 -2
- package/docs/it/intlayer_with_angular.md +2 -2
- package/docs/it/intlayer_with_astro.md +2 -2
- package/docs/it/intlayer_with_lynx+react.md +2 -2
- package/docs/it/intlayer_with_nextjs_16.md +174 -1
- package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/it/intlayer_with_react_native+expo.md +2 -2
- package/docs/it/intlayer_with_react_router_v7.md +225 -2
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/it/intlayer_with_svelte_kit.md +158 -2
- package/docs/it/intlayer_with_tanstack.md +159 -1
- package/docs/it/intlayer_with_vite+preact.md +159 -3
- package/docs/it/intlayer_with_vite+react.md +159 -3
- package/docs/it/intlayer_with_vite+solid.md +161 -5
- package/docs/it/intlayer_with_vite+svelte.md +159 -3
- package/docs/it/intlayer_with_vite+vue.md +161 -5
- package/docs/it/vs_code_extension.md +1 -1
- package/docs/ja/compiler.md +94 -58
- package/docs/ja/configuration.md +90 -66
- package/docs/ja/intlayer_with_analog.md +2 -2
- package/docs/ja/intlayer_with_angular.md +2 -2
- package/docs/ja/intlayer_with_astro.md +2 -2
- package/docs/ja/intlayer_with_lynx+react.md +2 -2
- package/docs/ja/intlayer_with_nextjs_16.md +174 -1
- package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ja/intlayer_with_react_native+expo.md +2 -2
- package/docs/ja/intlayer_with_react_router_v7.md +184 -394
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ja/intlayer_with_svelte_kit.md +119 -595
- package/docs/ja/intlayer_with_tanstack.md +131 -642
- package/docs/ja/intlayer_with_vite+preact.md +111 -1231
- package/docs/ja/intlayer_with_vite+react.md +129 -1304
- package/docs/ja/intlayer_with_vite+solid.md +161 -5
- package/docs/ja/intlayer_with_vite+svelte.md +159 -3
- package/docs/ja/intlayer_with_vite+vue.md +159 -3
- package/docs/ja/vs_code_extension.md +1 -1
- package/docs/ko/compiler.md +88 -52
- package/docs/ko/configuration.md +89 -65
- package/docs/ko/intlayer_with_analog.md +2 -2
- package/docs/ko/intlayer_with_angular.md +2 -2
- package/docs/ko/intlayer_with_astro.md +2 -2
- package/docs/ko/intlayer_with_lynx+react.md +2 -2
- package/docs/ko/intlayer_with_nextjs_16.md +174 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ko/intlayer_with_react_native+expo.md +2 -2
- package/docs/ko/intlayer_with_react_router_v7.md +225 -2
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ko/intlayer_with_svelte_kit.md +158 -2
- package/docs/ko/intlayer_with_tanstack.md +159 -1
- package/docs/ko/intlayer_with_vite+preact.md +159 -3
- package/docs/ko/intlayer_with_vite+react.md +157 -1
- package/docs/ko/intlayer_with_vite+solid.md +161 -5
- package/docs/ko/intlayer_with_vite+svelte.md +159 -3
- package/docs/ko/intlayer_with_vite+vue.md +159 -3
- package/docs/ko/vs_code_extension.md +1 -1
- package/docs/pl/compiler.md +84 -51
- package/docs/pl/configuration.md +85 -57
- package/docs/pl/intlayer_with_analog.md +2 -2
- package/docs/pl/intlayer_with_angular.md +2 -2
- package/docs/pl/intlayer_with_astro.md +2 -2
- package/docs/pl/intlayer_with_lynx+react.md +2 -2
- package/docs/pl/intlayer_with_nextjs_16.md +174 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pl/intlayer_with_react_native+expo.md +2 -2
- package/docs/pl/intlayer_with_react_router_v7.md +224 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pl/intlayer_with_svelte_kit.md +158 -2
- package/docs/pl/intlayer_with_tanstack.md +159 -1
- package/docs/pl/intlayer_with_vite+preact.md +158 -2
- package/docs/pl/intlayer_with_vite+react.md +159 -3
- package/docs/pl/intlayer_with_vite+solid.md +159 -3
- package/docs/pl/intlayer_with_vite+svelte.md +159 -3
- package/docs/pl/intlayer_with_vite+vue.md +161 -5
- package/docs/pl/vs_code_extension.md +1 -1
- package/docs/pt/compiler.md +81 -46
- package/docs/pt/configuration.md +399 -199
- package/docs/pt/intlayer_with_analog.md +2 -2
- package/docs/pt/intlayer_with_angular.md +2 -2
- package/docs/pt/intlayer_with_astro.md +2 -2
- package/docs/pt/intlayer_with_lynx+react.md +2 -2
- package/docs/pt/intlayer_with_nextjs_16.md +174 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pt/intlayer_with_react_native+expo.md +2 -2
- package/docs/pt/intlayer_with_react_router_v7.md +224 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pt/intlayer_with_svelte_kit.md +158 -2
- package/docs/pt/intlayer_with_tanstack.md +159 -1
- package/docs/pt/intlayer_with_vite+preact.md +158 -2
- package/docs/pt/intlayer_with_vite+react.md +157 -1
- package/docs/pt/intlayer_with_vite+solid.md +159 -3
- package/docs/pt/intlayer_with_vite+svelte.md +159 -3
- package/docs/pt/intlayer_with_vite+vue.md +159 -3
- package/docs/pt/vs_code_extension.md +1 -1
- package/docs/ru/compiler.md +90 -57
- package/docs/ru/configuration.md +78 -67
- package/docs/ru/intlayer_with_analog.md +2 -2
- package/docs/ru/intlayer_with_angular.md +2 -2
- package/docs/ru/intlayer_with_astro.md +2 -2
- package/docs/ru/intlayer_with_lynx+react.md +2 -2
- package/docs/ru/intlayer_with_nextjs_16.md +174 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ru/intlayer_with_react_native+expo.md +2 -2
- package/docs/ru/intlayer_with_react_router_v7.md +224 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ru/intlayer_with_svelte_kit.md +158 -2
- package/docs/ru/intlayer_with_tanstack.md +159 -1
- package/docs/ru/intlayer_with_vite+preact.md +159 -3
- package/docs/ru/intlayer_with_vite+react.md +157 -1
- package/docs/ru/intlayer_with_vite+solid.md +159 -3
- package/docs/ru/intlayer_with_vite+svelte.md +159 -3
- package/docs/ru/intlayer_with_vite+vue.md +159 -3
- package/docs/ru/vs_code_extension.md +1 -1
- package/docs/tr/compiler.md +85 -52
- package/docs/tr/configuration.md +85 -61
- package/docs/tr/intlayer_with_analog.md +2 -2
- package/docs/tr/intlayer_with_angular.md +2 -2
- package/docs/tr/intlayer_with_astro.md +2 -2
- package/docs/tr/intlayer_with_lynx+react.md +2 -2
- package/docs/tr/intlayer_with_nextjs_16.md +174 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +6 -14
- package/docs/tr/intlayer_with_react_native+expo.md +2 -2
- package/docs/tr/intlayer_with_react_router_v7.md +224 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/tr/intlayer_with_svelte_kit.md +158 -2
- package/docs/tr/intlayer_with_tanstack.md +159 -1
- package/docs/tr/intlayer_with_vite+preact.md +159 -3
- package/docs/tr/intlayer_with_vite+react.md +159 -3
- package/docs/tr/intlayer_with_vite+solid.md +159 -3
- package/docs/tr/intlayer_with_vite+svelte.md +159 -3
- package/docs/tr/intlayer_with_vite+vue.md +159 -3
- package/docs/tr/vs_code_extension.md +1 -1
- package/docs/uk/compiler.md +96 -61
- package/docs/uk/configuration.md +85 -57
- package/docs/uk/intlayer_with_analog.md +2 -2
- package/docs/uk/intlayer_with_angular.md +2 -2
- package/docs/uk/intlayer_with_astro.md +2 -2
- package/docs/uk/intlayer_with_lynx+react.md +2 -2
- package/docs/uk/intlayer_with_nextjs_16.md +174 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +4 -22
- package/docs/uk/intlayer_with_react_native+expo.md +2 -2
- package/docs/uk/intlayer_with_react_router_v7.md +224 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/uk/intlayer_with_svelte_kit.md +157 -1
- package/docs/uk/intlayer_with_tanstack.md +159 -1
- package/docs/uk/intlayer_with_vite+preact.md +159 -3
- package/docs/uk/intlayer_with_vite+react.md +157 -1
- package/docs/uk/intlayer_with_vite+solid.md +159 -3
- package/docs/uk/intlayer_with_vite+svelte.md +159 -3
- package/docs/uk/intlayer_with_vite+vue.md +159 -3
- package/docs/uk/vs_code_extension.md +1 -1
- package/docs/vi/compiler.md +85 -50
- package/docs/vi/configuration.md +87 -59
- package/docs/vi/intlayer_with_analog.md +2 -2
- package/docs/vi/intlayer_with_angular.md +2 -2
- package/docs/vi/intlayer_with_astro.md +2 -2
- package/docs/vi/intlayer_with_lynx+react.md +2 -2
- package/docs/vi/intlayer_with_nextjs_16.md +174 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/vi/intlayer_with_react_native+expo.md +2 -2
- package/docs/vi/intlayer_with_react_router_v7.md +224 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/vi/intlayer_with_svelte_kit.md +158 -2
- package/docs/vi/intlayer_with_tanstack.md +159 -1
- package/docs/vi/intlayer_with_vite+preact.md +159 -3
- package/docs/vi/intlayer_with_vite+react.md +159 -3
- package/docs/vi/intlayer_with_vite+solid.md +159 -3
- package/docs/vi/intlayer_with_vite+svelte.md +159 -3
- package/docs/vi/intlayer_with_vite+vue.md +159 -3
- package/docs/vi/vs_code_extension.md +1 -1
- package/docs/zh/compiler.md +84 -49
- package/docs/zh/configuration.md +82 -58
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_analog.md +2 -2
- package/docs/zh/intlayer_with_angular.md +2 -2
- package/docs/zh/intlayer_with_astro.md +2 -2
- package/docs/zh/intlayer_with_express.md +1 -1
- package/docs/zh/intlayer_with_fastify.md +1 -1
- package/docs/zh/intlayer_with_hono.md +1 -1
- package/docs/zh/intlayer_with_lynx+react.md +2 -2
- package/docs/zh/intlayer_with_nestjs.md +1 -1
- package/docs/zh/intlayer_with_nextjs_16.md +174 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/zh/intlayer_with_react_native+expo.md +2 -2
- package/docs/zh/intlayer_with_react_router_v7.md +227 -4
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
- package/docs/zh/intlayer_with_svelte_kit.md +158 -2
- package/docs/zh/intlayer_with_tanstack.md +159 -1
- package/docs/zh/intlayer_with_vite+preact.md +161 -5
- package/docs/zh/intlayer_with_vite+react.md +157 -1
- package/docs/zh/intlayer_with_vite+solid.md +163 -7
- package/docs/zh/intlayer_with_vite+svelte.md +159 -3
- package/docs/zh/intlayer_with_vite+vue.md +162 -6
- package/docs/zh/vs_code_extension.md +2 -2
- package/package.json +8 -8
- package/docs/update_docs.py +0 -65
package/docs/zh/configuration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2026-03-
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: 配置
|
|
5
5
|
description: 了解如何为您的应用程序配置 Intlayer。了解各种设置和选项,以根据您的需求自定义 Intlayer。
|
|
6
6
|
keywords:
|
|
@@ -15,7 +15,7 @@ slugs:
|
|
|
15
15
|
- configuration
|
|
16
16
|
history:
|
|
17
17
|
- version: 8.3.0
|
|
18
|
-
|
|
18
|
+
date: 2026-03-11
|
|
19
19
|
changes: 将 'baseDir' 从 'content' 配置移动到 'system' 配置
|
|
20
20
|
- version: 8.2.0
|
|
21
21
|
date: 2026-03-10
|
|
@@ -95,7 +95,7 @@ Intlayer 支持 JSON、JS、MJS 和 TS 配置文件格式:
|
|
|
95
95
|
|
|
96
96
|
## 示例配置文件
|
|
97
97
|
|
|
98
|
-
|
|
98
|
+
````typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
99
99
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
100
100
|
import { nextjsRewrite } from "intlayer/routing";
|
|
101
101
|
import { z } from "zod";
|
|
@@ -193,7 +193,7 @@ const config: IntlayerConfig = {
|
|
|
193
193
|
* Options: 'cookie', 'localStorage', 'sessionStorage', 'header', or an array of these.
|
|
194
194
|
* Default: ['cookie', 'header']
|
|
195
195
|
*/
|
|
196
|
-
storage: "cookie",
|
|
196
|
+
storage: ["cookie", "header"],
|
|
197
197
|
|
|
198
198
|
/**
|
|
199
199
|
* Base path for the application URLs.
|
|
@@ -259,13 +259,13 @@ const config: IntlayerConfig = {
|
|
|
259
259
|
editor: {
|
|
260
260
|
/**
|
|
261
261
|
* Whether the visual editor is enabled.
|
|
262
|
-
* Default:
|
|
262
|
+
* Default: false
|
|
263
263
|
*/
|
|
264
264
|
enabled: true,
|
|
265
265
|
|
|
266
266
|
/**
|
|
267
267
|
* URL of your application for origin validation.
|
|
268
|
-
* Default: "
|
|
268
|
+
* Default: ""
|
|
269
269
|
*/
|
|
270
270
|
applicationURL: "http://localhost:3000",
|
|
271
271
|
|
|
@@ -330,6 +330,17 @@ const config: IntlayerConfig = {
|
|
|
330
330
|
* Base URL for the AI API.
|
|
331
331
|
*/
|
|
332
332
|
baseURL: "http://localhost:3000",
|
|
333
|
+
|
|
334
|
+
/**
|
|
335
|
+
* 数据序列化
|
|
336
|
+
*
|
|
337
|
+
* 选项:
|
|
338
|
+
* - "json": 标准、可靠;使用更多 token。
|
|
339
|
+
* - "toon": 生成更少的 token,但不如 JSON 稳定。
|
|
340
|
+
*
|
|
341
|
+
* 默认值: "json"
|
|
342
|
+
*/
|
|
343
|
+
dataSerialization: "json",
|
|
333
344
|
},
|
|
334
345
|
|
|
335
346
|
/**
|
|
@@ -429,42 +440,70 @@ const config: IntlayerConfig = {
|
|
|
429
440
|
compiler: {
|
|
430
441
|
/**
|
|
431
442
|
* 指示是否应启用编译器。
|
|
443
|
+
*
|
|
444
|
+
* - false : 禁用编译器。
|
|
445
|
+
* - true : 启用编译器。
|
|
446
|
+
* - "build-only" : 在开发期间跳过编译器以加快启动速度。
|
|
447
|
+
*
|
|
448
|
+
* 默认值 : false
|
|
432
449
|
*/
|
|
433
450
|
enabled: true,
|
|
434
451
|
|
|
435
452
|
/**
|
|
436
|
-
*
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
*
|
|
453
|
+
* 定义输出文件路径。替换 `outputDir`。
|
|
454
|
+
*
|
|
455
|
+
* - 以 `./` 开头的路径相对于组件目录解析。
|
|
456
|
+
* - 以 `/` 开头的路径相对于项目根目录 (`baseDir`) 解析。
|
|
457
|
+
*
|
|
458
|
+
* - 在路径中包含 `{{locale}}` 变量将启用按语言分离开的字典生成。
|
|
459
|
+
*
|
|
460
|
+
* 示例:
|
|
461
|
+
* ```ts
|
|
462
|
+
* {
|
|
463
|
+
* // 在组件旁边创建多语言 .content.ts 文件
|
|
464
|
+
* output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
465
|
+
*
|
|
466
|
+
* // output: './{{fileName}}{{extension}}', // 使用字符串模板的等效写法
|
|
467
|
+
* }
|
|
468
|
+
* ```
|
|
469
|
+
*
|
|
470
|
+
* ```ts
|
|
471
|
+
* {
|
|
472
|
+
* // 在项目根目录下创建按语言集中的 JSON 文件
|
|
473
|
+
* output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
|
|
474
|
+
*
|
|
475
|
+
* // output: '/locales/{{locale}}/{{key}}.content.json', // 使用字符串模板的等效写法
|
|
476
|
+
* }
|
|
477
|
+
* ```
|
|
478
|
+
*
|
|
479
|
+
* 变量列表:
|
|
480
|
+
* - `fileName`: 文件名。
|
|
481
|
+
* - `key`: 内容键。
|
|
482
|
+
* - `locale`: 内容语言。
|
|
483
|
+
* - `extension`: 文件扩展名。
|
|
484
|
+
* - `componentFileName`: 组件文件名。
|
|
485
|
+
* - `componentExtension`: 组件文件扩展名。
|
|
486
|
+
* - `format`: 字典格式。
|
|
487
|
+
* - `componentFormat`: 组件字典格式。
|
|
488
|
+
* - `componentDirPath`: 组件目录路径。
|
|
445
489
|
*/
|
|
446
|
-
|
|
490
|
+
output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
|
|
447
491
|
|
|
448
492
|
/**
|
|
449
|
-
*
|
|
493
|
+
* 指示转换后是否应保存组件。
|
|
494
|
+
* 这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
450
495
|
*/
|
|
451
|
-
|
|
496
|
+
saveComponents: false,
|
|
452
497
|
|
|
453
498
|
/**
|
|
454
|
-
*
|
|
499
|
+
* 仅在生成的文件中插入内容。对于每种语言的 i18next 或 ICU MessageFormat JSON 输出非常有用。
|
|
455
500
|
*/
|
|
456
501
|
noMetadata: false,
|
|
457
502
|
|
|
458
503
|
/**
|
|
459
504
|
* 字典键前缀
|
|
460
505
|
*/
|
|
461
|
-
dictionaryKeyPrefix: "", //
|
|
462
|
-
|
|
463
|
-
/**
|
|
464
|
-
* 指示转换后是否应保存组件。
|
|
465
|
-
* 这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
466
|
-
*/
|
|
467
|
-
saveComponents: false,
|
|
506
|
+
dictionaryKeyPrefix: "", // 为所有字典键设置前缀
|
|
468
507
|
},
|
|
469
508
|
|
|
470
509
|
/**
|
|
@@ -483,7 +522,7 @@ const config: IntlayerConfig = {
|
|
|
483
522
|
};
|
|
484
523
|
|
|
485
524
|
export default config;
|
|
486
|
-
|
|
525
|
+
````
|
|
487
526
|
|
|
488
527
|
## 配置参考
|
|
489
528
|
|
|
@@ -981,25 +1020,6 @@ Intlayer 支持多个 AI 提供商,以增强灵活性和选择。目前支持
|
|
|
981
1020
|
- _注意_: 此选项依赖于 `@intlayer/babel` 和 `@intlayer/swc` 插件。
|
|
982
1021
|
- _注意_: 确保所有键在 `useIntlayer` 调用中是静态声明的。例如 `useIntlayer('navbar')`。
|
|
983
1022
|
|
|
984
|
-
- **importMode**:
|
|
985
|
-
- _注意_: **Deprecated**: Use `dictionary.importMode` instead.
|
|
986
|
-
- _类型_: `'static' | 'dynamic' | 'fetch'`
|
|
987
|
-
- _默认值_: `'static'`
|
|
988
|
-
- _描述_: 控制字典的导入方式。
|
|
989
|
-
- _示例_: `'dynamic'`
|
|
990
|
-
- _注意_: 可用模式:
|
|
991
|
-
- "static":字典以静态方式导入。将 `useIntlayer` 替换为 `useDictionary`。
|
|
992
|
-
- "dynamic":字典通过 Suspense 动态导入。将 `useIntlayer` 替换为 `useDictionaryDynamic`。
|
|
993
|
-
- "live":字典通过实时同步 API 动态获取。将 `useIntlayer` 替换为 `useDictionaryFetch`。
|
|
994
|
-
- _注意_:动态导入依赖 Suspense,可能会略微影响渲染性能。
|
|
995
|
-
- _注意_:如果禁用,所有语言环境将一次性加载,即使未被使用。
|
|
996
|
-
- _注意_:此选项依赖 `@intlayer/babel` 和 `@intlayer/swc` 插件。
|
|
997
|
-
- _注意_:确保在 `useIntlayer` 调用中所有键都是静态声明的。例如 `useIntlayer('navbar')`。
|
|
998
|
-
- _注意_:如果禁用 `optimize`,此选项将被忽略。
|
|
999
|
-
- _注意_: 如果设置为 "live",只有包含远程内容且标记为 "live" 的字典会被转换为实时模式。其他字典将以 "dynamic" 模式动态导入,以优化请求次数和加载性能。
|
|
1000
|
-
- _注意_: 实时模式将使用实时同步 API 来获取字典。如果 API 调用失败,字典将以 "dynamic" 模式动态导入。
|
|
1001
|
-
- _注意_: 此选项不会影响 `getIntlayer`、`getDictionary`、`useDictionary`、`useDictionaryAsync` 和 `useDictionaryDynamic` 函数。
|
|
1002
|
-
|
|
1003
1023
|
- **outputFormat**:
|
|
1004
1024
|
- _类型_: `'esm' | 'cjs'`
|
|
1005
1025
|
- _默认值_: `'esm'`
|
|
@@ -1033,7 +1053,7 @@ Intlayer 支持多个 AI 提供商,以增强灵活性和选择。目前支持
|
|
|
1033
1053
|
|
|
1034
1054
|
- **dictionaryKeyPrefix**:
|
|
1035
1055
|
- _类型_:`string`
|
|
1036
|
-
- _默认值_:`'
|
|
1056
|
+
- _默认值_:`''`
|
|
1037
1057
|
- _描述_:提取的字典键的前缀。
|
|
1038
1058
|
- _示例_:`'my-key-'`
|
|
1039
1059
|
- _注意_:提取字典时,键是根据文件名生成的。此前缀会添加到生成的键中,以防止冲突。
|
|
@@ -1057,24 +1077,28 @@ Intlayer 支持多个 AI 提供商,以增强灵活性和选择。目前支持
|
|
|
1057
1077
|
- _描述_:定义在优化过程中应排除哪些文件的模式。
|
|
1058
1078
|
- _示例_:`['**/node_modules/**', '!**/node_modules/react/**']`
|
|
1059
1079
|
|
|
1060
|
-
- **outputDir**:
|
|
1061
|
-
- _类型_:`string`
|
|
1062
|
-
- _默认值_: `'compiler'`
|
|
1063
|
-
- _描述_:存储提取字典的目录,相对于您的项目基准路径。
|
|
1064
|
-
|
|
1065
1080
|
- **output**:
|
|
1066
1081
|
- _类型_: `FilePathPattern`
|
|
1067
|
-
- _默认值_: `
|
|
1068
|
-
- _描述_: 定义输出文件路径。替换 `outputDir
|
|
1069
|
-
- _注意_:
|
|
1070
|
-
- _
|
|
1082
|
+
- _默认值_: `undefined`
|
|
1083
|
+
- _描述_: 定义输出文件路径。替换 `outputDir`。通过字符串模板或函数支持动态变量。支持的变量:`{{fileName}}`, `{{key}}`, `{{locale}}`, `{{extension}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{format}}`, `{{componentFormat}}`, `{{componentDirPath}}`。
|
|
1084
|
+
- _注意_: 以 `./` 开头的路径相对于组件目录解析。以 `/` 开头的路径相对于项目根目录 (`baseDir`) 解析。
|
|
1085
|
+
- _注意_: 在路径中包含 `{{locale}}` 变量将启用按语言环境分离开的字典生成。
|
|
1086
|
+
- _示例_:
|
|
1087
|
+
- **在组件旁边创建多语言文件**:
|
|
1088
|
+
- 字符串: `'./{{fileName}}{{extension}}'`
|
|
1089
|
+
- 函数: `({ fileName, extension }) => \`./${fileName}${extension}\``
|
|
1090
|
+
|
|
1091
|
+
- **输出按语言环境集中的 JSON**:
|
|
1092
|
+
- 字符串: `'/locales/{{locale}}/{{key}}.content.json'`
|
|
1093
|
+
- 函数: `({ key, locale }) => \`/locales/${locale}/${key}.content.json\``
|
|
1071
1094
|
|
|
1072
1095
|
- **noMetadata**:
|
|
1073
1096
|
- _类型_: `boolean`
|
|
1074
1097
|
- _默认值_: `false`
|
|
1075
1098
|
- _描述_: 指示是否应在文件中保存元数据。如果为 true,编译器将不会保存字典的元数据(键、内容包装器)。
|
|
1076
|
-
- _注意_: 如果与 `loadJSON`
|
|
1077
|
-
- _示例_:
|
|
1099
|
+
- _注意_: 如果与 `loadJSON` 插件一起使用,则非常有用。对于每种语言的 i18next 或 ICU MessageFormat JSON 输出非常有用。
|
|
1100
|
+
- _示例_:
|
|
1101
|
+
如果为 `true`:
|
|
1078
1102
|
```json
|
|
1079
1103
|
{
|
|
1080
1104
|
"key": "value"
|
|
@@ -44,7 +44,7 @@ history:
|
|
|
44
44
|
<iframe
|
|
45
45
|
src="https://stackblitz.com/github/aymericzip/intlayer-adonisjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
46
46
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
47
|
-
title="Demo CodeSandbox -
|
|
47
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
48
48
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
49
49
|
loading="lazy"
|
|
50
50
|
/>
|
|
@@ -49,7 +49,7 @@ history:
|
|
|
49
49
|
<iframe
|
|
50
50
|
src="https://stackblitz.com/github/aymericzip/intlayer-express-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
51
51
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
52
|
-
title="Demo CodeSandbox -
|
|
52
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
53
53
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
54
54
|
loading="lazy"
|
|
55
55
|
/>
|
|
@@ -49,7 +49,7 @@ history:
|
|
|
49
49
|
<iframe
|
|
50
50
|
src="https://stackblitz.com/github/aymericzip/intlayer-fastify-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
51
51
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
52
|
-
title="Demo CodeSandbox -
|
|
52
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
53
53
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
54
54
|
loading="lazy"
|
|
55
55
|
/>
|
|
@@ -47,7 +47,7 @@ history:
|
|
|
47
47
|
<iframe
|
|
48
48
|
src="https://stackblitz.com/github/aymericzip/intlayer-hono-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
49
49
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
50
|
-
title="Demo CodeSandbox -
|
|
50
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
51
51
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
52
52
|
loading="lazy"
|
|
53
53
|
/>
|
|
@@ -52,7 +52,7 @@ history:
|
|
|
52
52
|
<iframe
|
|
53
53
|
src="https://stackblitz.com/github/aymericzip/intlayer-nestjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
54
54
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
55
|
-
title="Demo CodeSandbox -
|
|
55
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
56
56
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
57
57
|
loading="lazy"
|
|
58
58
|
/>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-12-06
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Next.js i18n - 如何翻译Next.js 16 应用 2026
|
|
5
5
|
description: 了解如何让您的 Next.js 16 网站支持多语言。按照文档进行国际化 (i18n) 并对其进行翻译。
|
|
6
6
|
keywords:
|
|
@@ -1691,6 +1691,179 @@ Intlayer 使用模块扩充来利用 TypeScript 的优势,并使您的代码
|
|
|
1691
1691
|
|
|
1692
1692
|
有关如何使用该扩展的更多详细信息,请参阅 [Intlayer VS Code 扩展文档](https://intlayer.org/doc/vs-code-extension)。
|
|
1693
1693
|
|
|
1694
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
1695
|
+
|
|
1696
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
1697
|
+
|
|
1698
|
+
为了简化此过程,Intlayer 提出了 [编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) / [提取器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md) 来转换您的组件并提取内容。
|
|
1699
|
+
|
|
1700
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
1701
|
+
|
|
1702
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1703
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1704
|
+
|
|
1705
|
+
const config: IntlayerConfig = {
|
|
1706
|
+
// ... 您的其他配置
|
|
1707
|
+
compiler: {
|
|
1708
|
+
/**
|
|
1709
|
+
* 指示是否应启用编译器。
|
|
1710
|
+
*/
|
|
1711
|
+
enabled: true,
|
|
1712
|
+
|
|
1713
|
+
/**
|
|
1714
|
+
* 定义输出文件路径
|
|
1715
|
+
*/
|
|
1716
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1717
|
+
|
|
1718
|
+
/**
|
|
1719
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1720
|
+
*/
|
|
1721
|
+
saveComponents: false,
|
|
1722
|
+
|
|
1723
|
+
/**
|
|
1724
|
+
* 字典键前缀
|
|
1725
|
+
*/
|
|
1726
|
+
dictionaryKeyPrefix: "",
|
|
1727
|
+
},
|
|
1728
|
+
};
|
|
1729
|
+
|
|
1730
|
+
export default config;
|
|
1731
|
+
```
|
|
1732
|
+
|
|
1733
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1734
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1735
|
+
const config = {
|
|
1736
|
+
// ... 您的其他配置
|
|
1737
|
+
compiler: {
|
|
1738
|
+
/**
|
|
1739
|
+
* 指示是否应启用编译器。
|
|
1740
|
+
*/
|
|
1741
|
+
enabled: true,
|
|
1742
|
+
|
|
1743
|
+
/**
|
|
1744
|
+
* 定义输出文件路径
|
|
1745
|
+
*/
|
|
1746
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1747
|
+
|
|
1748
|
+
/**
|
|
1749
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1750
|
+
*/
|
|
1751
|
+
saveComponents: false,
|
|
1752
|
+
|
|
1753
|
+
/**
|
|
1754
|
+
* 字典键前缀
|
|
1755
|
+
*/
|
|
1756
|
+
dictionaryKeyPrefix: "",
|
|
1757
|
+
},
|
|
1758
|
+
};
|
|
1759
|
+
|
|
1760
|
+
export default config;
|
|
1761
|
+
```
|
|
1762
|
+
|
|
1763
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1764
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1765
|
+
const config = {
|
|
1766
|
+
// ... 您的其他配置
|
|
1767
|
+
compiler: {
|
|
1768
|
+
/**
|
|
1769
|
+
* 指示是否应启用编译器。
|
|
1770
|
+
*/
|
|
1771
|
+
enabled: true,
|
|
1772
|
+
|
|
1773
|
+
/**
|
|
1774
|
+
* 定义输出文件路径
|
|
1775
|
+
*/
|
|
1776
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1777
|
+
|
|
1778
|
+
/**
|
|
1779
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1780
|
+
*/
|
|
1781
|
+
saveComponents: false,
|
|
1782
|
+
|
|
1783
|
+
/**
|
|
1784
|
+
* 字典键前缀
|
|
1785
|
+
*/
|
|
1786
|
+
dictionaryKeyPrefix: "",
|
|
1787
|
+
},
|
|
1788
|
+
};
|
|
1789
|
+
|
|
1790
|
+
module.exports = config;
|
|
1791
|
+
```
|
|
1792
|
+
|
|
1793
|
+
<Tabs>
|
|
1794
|
+
<Tab value='提取命令'>
|
|
1795
|
+
|
|
1796
|
+
运行提取器以转换组件并提取内容
|
|
1797
|
+
|
|
1798
|
+
```bash packageManager="npm"
|
|
1799
|
+
npx intlayer extract
|
|
1800
|
+
```
|
|
1801
|
+
|
|
1802
|
+
```bash packageManager="pnpm"
|
|
1803
|
+
pnpm intlayer extract
|
|
1804
|
+
```
|
|
1805
|
+
|
|
1806
|
+
```bash packageManager="yarn"
|
|
1807
|
+
yarn intlayer extract
|
|
1808
|
+
```
|
|
1809
|
+
|
|
1810
|
+
```bash packageManager="bun"
|
|
1811
|
+
bunx intlayer extract
|
|
1812
|
+
```
|
|
1813
|
+
|
|
1814
|
+
</Tab>
|
|
1815
|
+
<Tab value='Babel 编译器'>
|
|
1816
|
+
|
|
1817
|
+
```bash packageManager="npm"
|
|
1818
|
+
npm install @intlayer/babel --save-dev
|
|
1819
|
+
```
|
|
1820
|
+
|
|
1821
|
+
```bash packageManager="pnpm"
|
|
1822
|
+
pnpm add @intlayer/babel --save-dev
|
|
1823
|
+
```
|
|
1824
|
+
|
|
1825
|
+
```bash packageManager="yarn"
|
|
1826
|
+
yarn add @intlayer/babel --save-dev
|
|
1827
|
+
```
|
|
1828
|
+
|
|
1829
|
+
```bash packageManager="bun"
|
|
1830
|
+
bun add @intlayer/babel --dev
|
|
1831
|
+
```
|
|
1832
|
+
|
|
1833
|
+
```js fileName="babel.config.js"
|
|
1834
|
+
const {
|
|
1835
|
+
intlayerExtractBabelPlugin,
|
|
1836
|
+
getExtractPluginOptions,
|
|
1837
|
+
} = require("@intlayer/babel");
|
|
1838
|
+
|
|
1839
|
+
module.exports = {
|
|
1840
|
+
presets: ["next/babel"],
|
|
1841
|
+
plugins: [
|
|
1842
|
+
// 将组件内容提取到字典中
|
|
1843
|
+
[intlayerExtractBabelPlugin, getExtractPluginOptions()],
|
|
1844
|
+
],
|
|
1845
|
+
};
|
|
1846
|
+
```
|
|
1847
|
+
|
|
1848
|
+
```bash packageManager="npm"
|
|
1849
|
+
npm run build # 或 npm run dev
|
|
1850
|
+
```
|
|
1851
|
+
|
|
1852
|
+
```bash packageManager="pnpm"
|
|
1853
|
+
pnpm run build # 或 pnpm run dev
|
|
1854
|
+
```
|
|
1855
|
+
|
|
1856
|
+
```bash packageManager="yarn"
|
|
1857
|
+
yarn build # 或 yarn dev
|
|
1858
|
+
```
|
|
1859
|
+
|
|
1860
|
+
```bash packageManager="bun"
|
|
1861
|
+
bun run build # Or bun run dev
|
|
1862
|
+
```
|
|
1863
|
+
|
|
1864
|
+
</Tab>
|
|
1865
|
+
</Tabs>
|
|
1866
|
+
|
|
1694
1867
|
### 深入了解
|
|
1695
1868
|
|
|
1696
1869
|
要深入了解,您可以实现[可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)或使用 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md) 外化您的内容。
|