49 lines
1.3 KiB
Plaintext
49 lines
1.3 KiB
Plaintext
---
|
||
title: 项目配置
|
||
description: 创建应用配置并接入 Vite 插件。
|
||
order: 10
|
||
toc:
|
||
- id: configuration
|
||
title: 配置文件
|
||
- id: catalog-sources
|
||
title: 词典来源
|
||
- id: vite-plugin
|
||
title: Vite 插件
|
||
---
|
||
|
||
## 配置文件 {#configuration}
|
||
|
||
在使用方应用中创建 `i18n.config.json`:
|
||
|
||
```json
|
||
{
|
||
"sourceLocale": "en-US",
|
||
"locales": ["en-US", "zh-Hans"],
|
||
"catalogPath": "src/locales/{locale}/messages",
|
||
"catalogSources": ["@workspace/ui/locales/{locale}"],
|
||
"include": ["src", "../../packages/ui/src"],
|
||
"exclude": ["**/*.test.{ts,tsx}"]
|
||
}
|
||
```
|
||
|
||
该文件是应用唯一的持久国际化配置。CLI 命令只为子进程创建临时 Lingui 配置。
|
||
|
||
工作区只提供简体中文(`zh-Hans`)和美式英语(`en-US`)。应用词典和包词典来源应使用相同的语言键。
|
||
|
||
## 词典来源 {#catalog-sources}
|
||
|
||
词典来源按从左到右的顺序合并,应用词典始终位于最后。将可复用包词典放在前面,使产品特有翻译可以覆盖它们。
|
||
|
||
## Vite 插件 {#vite-plugin}
|
||
|
||
```ts
|
||
import { i18n } from "@workspace/i18n/vite"
|
||
import { defineConfig } from "vite"
|
||
|
||
export default defineConfig({
|
||
plugins: [i18n()],
|
||
})
|
||
```
|
||
|
||
插件会提供开发词典 API,并通过 `@workspace/i18n/catalogs` 暴露生成的加载器。
|