diff --git a/packages/ui/src/components/TextModelEditModal.vue b/packages/ui/src/components/TextModelEditModal.vue
index 98ae774a..96c1571a 100644
--- a/packages/ui/src/components/TextModelEditModal.vue
+++ b/packages/ui/src/components/TextModelEditModal.vue
@@ -33,14 +33,14 @@
- 提供商配置
+ {{ t('modelManager.provider.section') }}
-
+
@@ -82,7 +82,7 @@
- 模型配置
+ {{ t('modelManager.model.section') }}
diff --git a/packages/ui/src/i18n/locales/en-US.ts b/packages/ui/src/i18n/locales/en-US.ts
index 29fa3cbb..7f8fd736 100644
--- a/packages/ui/src/i18n/locales/en-US.ts
+++ b/packages/ui/src/i18n/locales/en-US.ts
@@ -732,6 +732,15 @@ export default {
addModel: "Add",
addImageModel: "Add Image Model",
+ provider: {
+ section: "Provider Configuration",
+ label: "Provider",
+ placeholder: "Select Provider",
+ },
+ model: {
+ section: "Model Configuration",
+ },
+
// Advanced Parameters
advancedParameters: {
title: "Advanced Parameters",
diff --git a/packages/ui/src/i18n/locales/zh-CN.ts b/packages/ui/src/i18n/locales/zh-CN.ts
index 80745906..572d1053 100644
--- a/packages/ui/src/i18n/locales/zh-CN.ts
+++ b/packages/ui/src/i18n/locales/zh-CN.ts
@@ -713,6 +713,15 @@ export default {
addModel: "添加",
addImageModel: "添加图像模型",
+ provider: {
+ section: "提供商配置",
+ label: "提供商",
+ placeholder: "选择提供商",
+ },
+ model: {
+ section: "模型配置",
+ },
+
// 高级参数
advancedParameters: {
title: "高级参数",
diff --git a/packages/ui/src/i18n/locales/zh-TW.ts b/packages/ui/src/i18n/locales/zh-TW.ts
index 0130365d..460b5b5a 100644
--- a/packages/ui/src/i18n/locales/zh-TW.ts
+++ b/packages/ui/src/i18n/locales/zh-TW.ts
@@ -712,6 +712,15 @@ export default {
addModel: "新增",
addImageModel: "新增圖像模型",
+ provider: {
+ section: "提供商配置",
+ label: "提供商",
+ placeholder: "選擇提供商",
+ },
+ model: {
+ section: "模型配置",
+ },
+
// 進階參數
advancedParameters: {
title: "進階參數",
diff --git a/packages/web/src/main.ts b/packages/web/src/main.ts
index c3bab5f0..92eff129 100644
--- a/packages/web/src/main.ts
+++ b/packages/web/src/main.ts
@@ -15,8 +15,8 @@
* along with this program. If not, see .
*/
-import { createApp } from 'vue'
-import { installI18nOnly } from '@prompt-optimizer/ui'
+import { createApp, watch } from 'vue'
+import { installI18nOnly, i18n } from '@prompt-optimizer/ui'
import App from './App.vue'
import '@prompt-optimizer/ui/dist/style.css'
@@ -24,6 +24,20 @@ import '@prompt-optimizer/ui/dist/style.css'
const app = createApp(App)
// 只安装i18n插件,语言初始化将在App.vue中服务准备好后进行
installI18nOnly(app)
+
+// 同步文档标题和语言属性
+if (typeof document !== 'undefined') {
+ const syncDocumentTitle = () => {
+ document.title = i18n.global.t('common.appName')
+ const currentLocale = String(i18n.global.locale.value || '')
+ const htmlLang = currentLocale.startsWith('zh') ? 'zh' : 'en'
+ document.documentElement.setAttribute('lang', htmlLang)
+ }
+
+ syncDocumentTitle()
+ watch(i18n.global.locale, syncDocumentTitle)
+}
+
app.mount('#app')
// 只在Vercel环境中加载Analytics