@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
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Preact i18n - 如何翻译Preact 应用 2026
|
|
5
5
|
description: 了解如何使您的 Vite 和 Preact 网站支持多语言。按照文档进行国际化(i18n)和翻译。
|
|
6
6
|
keywords:
|
|
@@ -27,7 +27,7 @@ history:
|
|
|
27
27
|
# 使用 Intlayer 翻译您的 Vite 和 Preact 网站 | 国际化 (i18n)
|
|
28
28
|
|
|
29
29
|
<Tabs defaultTab="video">
|
|
30
|
-
<Tab label="
|
|
30
|
+
<Tab label="视频" value="video">
|
|
31
31
|
|
|
32
32
|
<iframe title="The best i18n solution for Vite and Preact? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?si=VaKmrYMmXjo3xpk2"/>
|
|
33
33
|
|
|
@@ -37,7 +37,7 @@ history:
|
|
|
37
37
|
<iframe
|
|
38
38
|
src="https://stackblitz.com/github/aymericzip/intlayer-vite-preact-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
39
39
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
40
|
-
title="Demo CodeSandbox -
|
|
40
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
41
41
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
42
42
|
loading="lazy"
|
|
43
43
|
/>
|
|
@@ -1339,8 +1339,8 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
|
|
|
1339
1339
|
|
|
1340
1340
|
为此,您可以在 `.gitignore` 文件中添加以下指令:
|
|
1341
1341
|
|
|
1342
|
-
```
|
|
1343
|
-
#
|
|
1342
|
+
```bash
|
|
1343
|
+
# 忽略 Intlayer 生成的文件
|
|
1344
1344
|
.intlayer
|
|
1345
1345
|
```
|
|
1346
1346
|
|
|
@@ -1361,6 +1361,162 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
|
|
|
1361
1361
|
|
|
1362
1362
|
---
|
|
1363
1363
|
|
|
1364
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
1365
|
+
|
|
1366
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
1367
|
+
|
|
1368
|
+
为了简化此过程,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) 来转换您的组件并提取内容。
|
|
1369
|
+
|
|
1370
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
1371
|
+
|
|
1372
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1373
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1374
|
+
|
|
1375
|
+
const config: IntlayerConfig = {
|
|
1376
|
+
// ... 您的其他配置
|
|
1377
|
+
compiler: {
|
|
1378
|
+
/**
|
|
1379
|
+
* 指示是否应启用编译器。
|
|
1380
|
+
*/
|
|
1381
|
+
enabled: true,
|
|
1382
|
+
|
|
1383
|
+
/**
|
|
1384
|
+
* 定义输出文件路径
|
|
1385
|
+
*/
|
|
1386
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1387
|
+
|
|
1388
|
+
/**
|
|
1389
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1390
|
+
*/
|
|
1391
|
+
saveComponents: false,
|
|
1392
|
+
|
|
1393
|
+
/**
|
|
1394
|
+
* 字典键前缀
|
|
1395
|
+
*/
|
|
1396
|
+
dictionaryKeyPrefix: "",
|
|
1397
|
+
},
|
|
1398
|
+
};
|
|
1399
|
+
|
|
1400
|
+
export default config;
|
|
1401
|
+
```
|
|
1402
|
+
|
|
1403
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1404
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1405
|
+
const config = {
|
|
1406
|
+
// ... 您的其他配置
|
|
1407
|
+
compiler: {
|
|
1408
|
+
/**
|
|
1409
|
+
* 指示是否应启用编译器。
|
|
1410
|
+
*/
|
|
1411
|
+
enabled: true,
|
|
1412
|
+
|
|
1413
|
+
/**
|
|
1414
|
+
* 定义输出文件路径
|
|
1415
|
+
*/
|
|
1416
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1417
|
+
|
|
1418
|
+
/**
|
|
1419
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1420
|
+
*/
|
|
1421
|
+
saveComponents: false,
|
|
1422
|
+
|
|
1423
|
+
/**
|
|
1424
|
+
* 字典键前缀
|
|
1425
|
+
*/
|
|
1426
|
+
dictionaryKeyPrefix: "",
|
|
1427
|
+
},
|
|
1428
|
+
};
|
|
1429
|
+
|
|
1430
|
+
export default config;
|
|
1431
|
+
```
|
|
1432
|
+
|
|
1433
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1434
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1435
|
+
const config = {
|
|
1436
|
+
// ... 您的其他配置
|
|
1437
|
+
compiler: {
|
|
1438
|
+
/**
|
|
1439
|
+
* 指示是否应启用编译器。
|
|
1440
|
+
*/
|
|
1441
|
+
enabled: true,
|
|
1442
|
+
|
|
1443
|
+
/**
|
|
1444
|
+
* 定义输出文件路径
|
|
1445
|
+
*/
|
|
1446
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1447
|
+
|
|
1448
|
+
/**
|
|
1449
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1450
|
+
*/
|
|
1451
|
+
saveComponents: false,
|
|
1452
|
+
|
|
1453
|
+
/**
|
|
1454
|
+
* 字典键前缀
|
|
1455
|
+
*/
|
|
1456
|
+
dictionaryKeyPrefix: "",
|
|
1457
|
+
},
|
|
1458
|
+
};
|
|
1459
|
+
|
|
1460
|
+
module.exports = config;
|
|
1461
|
+
```
|
|
1462
|
+
|
|
1463
|
+
<Tabs>
|
|
1464
|
+
<Tab value='提取命令'>
|
|
1465
|
+
|
|
1466
|
+
运行提取器以转换组件并提取内容
|
|
1467
|
+
|
|
1468
|
+
```bash packageManager="npm"
|
|
1469
|
+
npx intlayer extract
|
|
1470
|
+
```
|
|
1471
|
+
|
|
1472
|
+
```bash packageManager="pnpm"
|
|
1473
|
+
pnpm intlayer extract
|
|
1474
|
+
```
|
|
1475
|
+
|
|
1476
|
+
```bash packageManager="yarn"
|
|
1477
|
+
yarn intlayer extract
|
|
1478
|
+
```
|
|
1479
|
+
|
|
1480
|
+
```bash packageManager="bun"
|
|
1481
|
+
bunx intlayer extract
|
|
1482
|
+
```
|
|
1483
|
+
|
|
1484
|
+
</Tab>
|
|
1485
|
+
<Tab value='Babel 编译器'>
|
|
1486
|
+
|
|
1487
|
+
更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
|
|
1488
|
+
|
|
1489
|
+
```ts fileName="vite.config.ts"
|
|
1490
|
+
import { defineConfig } from "vite";
|
|
1491
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
1492
|
+
|
|
1493
|
+
export default defineConfig({
|
|
1494
|
+
plugins: [
|
|
1495
|
+
intlayer(),
|
|
1496
|
+
intlayerCompiler(), // 添加编译器插件
|
|
1497
|
+
],
|
|
1498
|
+
});
|
|
1499
|
+
```
|
|
1500
|
+
|
|
1501
|
+
```bash packageManager="npm"
|
|
1502
|
+
npm run build # 或 npm run dev
|
|
1503
|
+
```
|
|
1504
|
+
|
|
1505
|
+
```bash packageManager="pnpm"
|
|
1506
|
+
pnpm run build # 或 pnpm run dev
|
|
1507
|
+
```
|
|
1508
|
+
|
|
1509
|
+
```bash packageManager="yarn"
|
|
1510
|
+
yarn build # 或 yarn dev
|
|
1511
|
+
```
|
|
1512
|
+
|
|
1513
|
+
```bash packageManager="bun"
|
|
1514
|
+
bun run build # Or bun run dev
|
|
1515
|
+
```
|
|
1516
|
+
|
|
1517
|
+
</Tab>
|
|
1518
|
+
</Tabs>
|
|
1519
|
+
|
|
1364
1520
|
### 深入了解
|
|
1365
1521
|
|
|
1366
1522
|
要进一步了解,您可以实现 [可视化编辑器](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) 将内容外部化。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-03-07
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + React i18n - 如何翻译React 应用 2026
|
|
5
5
|
description: 学习如何使用 Intlayer 为您的 Vite 和 React 应用添加国际化 (i18n)。按照本指南使您的应用支持多语言。
|
|
6
6
|
keywords:
|
|
@@ -1405,6 +1405,162 @@ Intlayer 使用模块增强(module augmentation)来利用 TypeScript 的优
|
|
|
1405
1405
|
|
|
1406
1406
|
---
|
|
1407
1407
|
|
|
1408
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
1409
|
+
|
|
1410
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
1411
|
+
|
|
1412
|
+
为了简化此过程,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) 来转换您的组件并提取内容。
|
|
1413
|
+
|
|
1414
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
1415
|
+
|
|
1416
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1417
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1418
|
+
|
|
1419
|
+
const config: IntlayerConfig = {
|
|
1420
|
+
// ... 您的其他配置
|
|
1421
|
+
compiler: {
|
|
1422
|
+
/**
|
|
1423
|
+
* 指示是否应启用编译器。
|
|
1424
|
+
*/
|
|
1425
|
+
enabled: true,
|
|
1426
|
+
|
|
1427
|
+
/**
|
|
1428
|
+
* 定义输出文件路径
|
|
1429
|
+
*/
|
|
1430
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1431
|
+
|
|
1432
|
+
/**
|
|
1433
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1434
|
+
*/
|
|
1435
|
+
saveComponents: false,
|
|
1436
|
+
|
|
1437
|
+
/**
|
|
1438
|
+
* 字典键前缀
|
|
1439
|
+
*/
|
|
1440
|
+
dictionaryKeyPrefix: "",
|
|
1441
|
+
},
|
|
1442
|
+
};
|
|
1443
|
+
|
|
1444
|
+
export default config;
|
|
1445
|
+
```
|
|
1446
|
+
|
|
1447
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1448
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1449
|
+
const config = {
|
|
1450
|
+
// ... 您的其他配置
|
|
1451
|
+
compiler: {
|
|
1452
|
+
/**
|
|
1453
|
+
* 指示是否应启用编译器。
|
|
1454
|
+
*/
|
|
1455
|
+
enabled: true,
|
|
1456
|
+
|
|
1457
|
+
/**
|
|
1458
|
+
* 定义输出文件路径
|
|
1459
|
+
*/
|
|
1460
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1461
|
+
|
|
1462
|
+
/**
|
|
1463
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1464
|
+
*/
|
|
1465
|
+
saveComponents: false,
|
|
1466
|
+
|
|
1467
|
+
/**
|
|
1468
|
+
* 字典键前缀
|
|
1469
|
+
*/
|
|
1470
|
+
dictionaryKeyPrefix: "",
|
|
1471
|
+
},
|
|
1472
|
+
};
|
|
1473
|
+
|
|
1474
|
+
export default config;
|
|
1475
|
+
```
|
|
1476
|
+
|
|
1477
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1478
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1479
|
+
const config = {
|
|
1480
|
+
// ... 您的其他配置
|
|
1481
|
+
compiler: {
|
|
1482
|
+
/**
|
|
1483
|
+
* 指示是否应启用编译器。
|
|
1484
|
+
*/
|
|
1485
|
+
enabled: true,
|
|
1486
|
+
|
|
1487
|
+
/**
|
|
1488
|
+
* 定义输出文件路径
|
|
1489
|
+
*/
|
|
1490
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1491
|
+
|
|
1492
|
+
/**
|
|
1493
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1494
|
+
*/
|
|
1495
|
+
saveComponents: false,
|
|
1496
|
+
|
|
1497
|
+
/**
|
|
1498
|
+
* 字典键前缀
|
|
1499
|
+
*/
|
|
1500
|
+
dictionaryKeyPrefix: "",
|
|
1501
|
+
},
|
|
1502
|
+
};
|
|
1503
|
+
|
|
1504
|
+
module.exports = config;
|
|
1505
|
+
```
|
|
1506
|
+
|
|
1507
|
+
<Tabs>
|
|
1508
|
+
<Tab value='提取命令'>
|
|
1509
|
+
|
|
1510
|
+
运行提取器以转换组件并提取内容
|
|
1511
|
+
|
|
1512
|
+
```bash packageManager="npm"
|
|
1513
|
+
npx intlayer extract
|
|
1514
|
+
```
|
|
1515
|
+
|
|
1516
|
+
```bash packageManager="pnpm"
|
|
1517
|
+
pnpm intlayer extract
|
|
1518
|
+
```
|
|
1519
|
+
|
|
1520
|
+
```bash packageManager="yarn"
|
|
1521
|
+
yarn intlayer extract
|
|
1522
|
+
```
|
|
1523
|
+
|
|
1524
|
+
```bash packageManager="bun"
|
|
1525
|
+
bunx intlayer extract
|
|
1526
|
+
```
|
|
1527
|
+
|
|
1528
|
+
</Tab>
|
|
1529
|
+
<Tab value='Babel 编译器'>
|
|
1530
|
+
|
|
1531
|
+
更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
|
|
1532
|
+
|
|
1533
|
+
```ts fileName="vite.config.ts"
|
|
1534
|
+
import { defineConfig } from "vite";
|
|
1535
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
1536
|
+
|
|
1537
|
+
export default defineConfig({
|
|
1538
|
+
plugins: [
|
|
1539
|
+
intlayer(),
|
|
1540
|
+
intlayerCompiler(), // 添加编译器插件
|
|
1541
|
+
],
|
|
1542
|
+
});
|
|
1543
|
+
```
|
|
1544
|
+
|
|
1545
|
+
```bash packageManager="npm"
|
|
1546
|
+
npm run build # 或 npm run dev
|
|
1547
|
+
```
|
|
1548
|
+
|
|
1549
|
+
```bash packageManager="pnpm"
|
|
1550
|
+
pnpm run build # 或 pnpm run dev
|
|
1551
|
+
```
|
|
1552
|
+
|
|
1553
|
+
```bash packageManager="yarn"
|
|
1554
|
+
yarn build # 或 yarn dev
|
|
1555
|
+
```
|
|
1556
|
+
|
|
1557
|
+
```bash packageManager="bun"
|
|
1558
|
+
bun run build # Or bun run dev
|
|
1559
|
+
```
|
|
1560
|
+
|
|
1561
|
+
</Tab>
|
|
1562
|
+
</Tabs>
|
|
1563
|
+
|
|
1408
1564
|
### 深入了解
|
|
1409
1565
|
|
|
1410
1566
|
要进一步使用,您可以实现[可视化编辑器](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)将内容外部化。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Solid i18n - 如何翻译Solid 应用 2026
|
|
5
5
|
description: 了解如何使您的 Vite 和 Solid 网站支持多语言。按照文档进行国际化(i18n)和翻译。
|
|
6
6
|
keywords:
|
|
@@ -27,7 +27,7 @@ history:
|
|
|
27
27
|
# 使用Intlayer翻译您的Vite and Solid | 国际化(i18n)
|
|
28
28
|
|
|
29
29
|
<Tabs defaultTab="video">
|
|
30
|
-
<Tab label="
|
|
30
|
+
<Tab label="视频" value="video">
|
|
31
31
|
|
|
32
32
|
<iframe title="The best i18n solution for Vite and Solid? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?si=VaKmrYMmXjo3xpk2"/>
|
|
33
33
|
|
|
@@ -37,7 +37,7 @@ history:
|
|
|
37
37
|
<iframe
|
|
38
38
|
src="https://stackblitz.com/github/aymericzip/intlayer-vite-solid-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
39
39
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
40
|
-
title="Demo CodeSandbox -
|
|
40
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
41
41
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
42
42
|
loading="lazy"
|
|
43
43
|
/>
|
|
@@ -45,7 +45,7 @@ history:
|
|
|
45
45
|
</Tab>
|
|
46
46
|
</Tabs>
|
|
47
47
|
|
|
48
|
-
##
|
|
48
|
+
## 目录
|
|
49
49
|
|
|
50
50
|
<TOC/>
|
|
51
51
|
|
|
@@ -68,7 +68,7 @@ history:
|
|
|
68
68
|
|
|
69
69
|
## 在 Vite 和 Solid 应用中设置 Intlayer 的分步指南
|
|
70
70
|
|
|
71
|
-
##
|
|
71
|
+
## 目录
|
|
72
72
|
|
|
73
73
|
<TOC/>
|
|
74
74
|
|
|
@@ -554,8 +554,8 @@ const MyComponent = () => {
|
|
|
554
554
|
|
|
555
555
|
为此,您可以将以下指令添加到您的 `.gitignore` 文件中:
|
|
556
556
|
|
|
557
|
-
```
|
|
558
|
-
#
|
|
557
|
+
```bash
|
|
558
|
+
# 忽略 Intlayer 生成的文件
|
|
559
559
|
.intlayer
|
|
560
560
|
```
|
|
561
561
|
|
|
@@ -576,6 +576,162 @@ const MyComponent = () => {
|
|
|
576
576
|
|
|
577
577
|
---
|
|
578
578
|
|
|
579
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
580
|
+
|
|
581
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
582
|
+
|
|
583
|
+
为了简化此过程,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) 来转换您的组件并提取内容。
|
|
584
|
+
|
|
585
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
586
|
+
|
|
587
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
588
|
+
import { type IntlayerConfig } from "intlayer";
|
|
589
|
+
|
|
590
|
+
const config: IntlayerConfig = {
|
|
591
|
+
// ... 您的其他配置
|
|
592
|
+
compiler: {
|
|
593
|
+
/**
|
|
594
|
+
* 指示是否应启用编译器。
|
|
595
|
+
*/
|
|
596
|
+
enabled: true,
|
|
597
|
+
|
|
598
|
+
/**
|
|
599
|
+
* 定义输出文件路径
|
|
600
|
+
*/
|
|
601
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
602
|
+
|
|
603
|
+
/**
|
|
604
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
605
|
+
*/
|
|
606
|
+
saveComponents: false,
|
|
607
|
+
|
|
608
|
+
/**
|
|
609
|
+
* 字典键前缀
|
|
610
|
+
*/
|
|
611
|
+
dictionaryKeyPrefix: "",
|
|
612
|
+
},
|
|
613
|
+
};
|
|
614
|
+
|
|
615
|
+
export default config;
|
|
616
|
+
```
|
|
617
|
+
|
|
618
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
619
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
620
|
+
const config = {
|
|
621
|
+
// ... 您的其他配置
|
|
622
|
+
compiler: {
|
|
623
|
+
/**
|
|
624
|
+
* 指示是否应启用编译器。
|
|
625
|
+
*/
|
|
626
|
+
enabled: true,
|
|
627
|
+
|
|
628
|
+
/**
|
|
629
|
+
* 定义输出文件路径
|
|
630
|
+
*/
|
|
631
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
632
|
+
|
|
633
|
+
/**
|
|
634
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
635
|
+
*/
|
|
636
|
+
saveComponents: false,
|
|
637
|
+
|
|
638
|
+
/**
|
|
639
|
+
* 字典键前缀
|
|
640
|
+
*/
|
|
641
|
+
dictionaryKeyPrefix: "",
|
|
642
|
+
},
|
|
643
|
+
};
|
|
644
|
+
|
|
645
|
+
export default config;
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
649
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
650
|
+
const config = {
|
|
651
|
+
// ... 您的其他配置
|
|
652
|
+
compiler: {
|
|
653
|
+
/**
|
|
654
|
+
* 指示是否应启用编译器。
|
|
655
|
+
*/
|
|
656
|
+
enabled: true,
|
|
657
|
+
|
|
658
|
+
/**
|
|
659
|
+
* 定义输出文件路径
|
|
660
|
+
*/
|
|
661
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
662
|
+
|
|
663
|
+
/**
|
|
664
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
665
|
+
*/
|
|
666
|
+
saveComponents: false,
|
|
667
|
+
|
|
668
|
+
/**
|
|
669
|
+
* 字典键前缀
|
|
670
|
+
*/
|
|
671
|
+
dictionaryKeyPrefix: "",
|
|
672
|
+
},
|
|
673
|
+
};
|
|
674
|
+
|
|
675
|
+
module.exports = config;
|
|
676
|
+
```
|
|
677
|
+
|
|
678
|
+
<Tabs>
|
|
679
|
+
<Tab value='提取命令'>
|
|
680
|
+
|
|
681
|
+
运行提取器以转换组件并提取内容
|
|
682
|
+
|
|
683
|
+
```bash packageManager="npm"
|
|
684
|
+
npx intlayer extract
|
|
685
|
+
```
|
|
686
|
+
|
|
687
|
+
```bash packageManager="pnpm"
|
|
688
|
+
pnpm intlayer extract
|
|
689
|
+
```
|
|
690
|
+
|
|
691
|
+
```bash packageManager="yarn"
|
|
692
|
+
yarn intlayer extract
|
|
693
|
+
```
|
|
694
|
+
|
|
695
|
+
```bash packageManager="bun"
|
|
696
|
+
bunx intlayer extract
|
|
697
|
+
```
|
|
698
|
+
|
|
699
|
+
</Tab>
|
|
700
|
+
<Tab value='Babel 编译器'>
|
|
701
|
+
|
|
702
|
+
更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
|
|
703
|
+
|
|
704
|
+
```ts fileName="vite.config.ts"
|
|
705
|
+
import { defineConfig } from "vite";
|
|
706
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
707
|
+
|
|
708
|
+
export default defineConfig({
|
|
709
|
+
plugins: [
|
|
710
|
+
intlayer(),
|
|
711
|
+
intlayerCompiler(), // 添加编译器插件
|
|
712
|
+
],
|
|
713
|
+
});
|
|
714
|
+
```
|
|
715
|
+
|
|
716
|
+
```bash packageManager="npm"
|
|
717
|
+
npm run build # 或 npm run dev
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
```bash packageManager="pnpm"
|
|
721
|
+
pnpm run build # 或 pnpm run dev
|
|
722
|
+
```
|
|
723
|
+
|
|
724
|
+
```bash packageManager="yarn"
|
|
725
|
+
yarn build # 或 yarn dev
|
|
726
|
+
```
|
|
727
|
+
|
|
728
|
+
```bash packageManager="bun"
|
|
729
|
+
bun run build # Or bun run dev
|
|
730
|
+
```
|
|
731
|
+
|
|
732
|
+
</Tab>
|
|
733
|
+
</Tabs>
|
|
734
|
+
|
|
579
735
|
### 深入了解
|
|
580
736
|
|
|
581
737
|
要进一步使用,您可以实现[可视化编辑器](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)将内容外部化。
|