From 946b7b4f1fed2ad7ad2accca83a3ae3c34d1d939 Mon Sep 17 00:00:00 2001
From: Shenhan11 <1670285296@qq.com>
Date: Wed, 24 Dec 2025 20:02:45 +0800
Subject: [PATCH] feat(i18n): add internationalization for common UI components
Signed-off-by: Shenhan11 <1670285296@qq.com>
---
.../vgpu/views/monitor/overview/getOptions.js | 3 ++-
.../vgpu/views/monitor/overview/index.vue | 10 +++++-----
packages/web/src/components/CodePre.vue | 5 ++++-
packages/web/src/components/Confirm/index.js | 5 +++--
packages/web/src/components/Confirm/index.vue | 5 +++--
packages/web/src/components/FilterInput.vue | 7 +++++--
.../web/src/components/FormPlus/FormItem.vue | 6 ++++--
.../web/src/components/FormPlus/FormList.vue | 9 ++++++---
packages/web/src/components/FormPlus/index.vue | 4 +++-
packages/web/src/components/FormPlusDrawer.vue | 7 +++++--
packages/web/src/components/Message/index.js | 4 +++-
packages/web/src/components/RadioPlus.vue | 7 +++++--
.../web/src/components/TablePlus/SearchTag.vue | 7 +++++--
packages/web/src/components/TextPlus.vue | 4 +++-
packages/web/src/locales/en.js | 17 +++++++++++++++++
packages/web/src/locales/zh.js | 18 +++++++++++++++++-
packages/web/src/utils/index.js | 3 ++-
packages/web/src/utils/request.js | 5 +++--
packages/web/src/views/error-page/401.vue | 2 +-
19 files changed, 96 insertions(+), 32 deletions(-)
diff --git a/packages/web/projects/vgpu/views/monitor/overview/getOptions.js b/packages/web/projects/vgpu/views/monitor/overview/getOptions.js
index db2f2324..dd4e4dad 100644
--- a/packages/web/projects/vgpu/views/monitor/overview/getOptions.js
+++ b/packages/web/projects/vgpu/views/monitor/overview/getOptions.js
@@ -2,6 +2,7 @@ import { timeParse } from '@/utils';
import { cloneDeep } from 'lodash';
import nodeApi from '~/vgpu/api/node';
import { ElMessage } from 'element-plus';
+import i18n from '@/locales';
export const getResourceStatus = (statusConfig) => {
return {
@@ -280,7 +281,7 @@ export const handleChartClick = async (params, router) => {
const uuid = node.uid;
router.push(`/admin/vgpu/node/admin/${uuid}?nodeName=${name}`);
} else {
- ElMessage.error('节点未找到');
+ ElMessage.error(i18n.global.t('node.nodeNotFound'));
}
};
diff --git a/packages/web/projects/vgpu/views/monitor/overview/index.vue b/packages/web/projects/vgpu/views/monitor/overview/index.vue
index 2f5ffd21..d320b26f 100644
--- a/packages/web/projects/vgpu/views/monitor/overview/index.vue
+++ b/packages/web/projects/vgpu/views/monitor/overview/index.vue
@@ -158,7 +158,7 @@ const _cardGaugeConfig = useInstantVector([
percentQuery: `avg(sum (hami_container_vgpu_allocated) by (instance))/avg(sum (hami_vgpu_count) by (instance)) *100`,
total: 0,
used: 0,
- unit: '个',
+ unit: t('common.unitCount'),
},
{
title: 'computeAllocRate',
@@ -224,19 +224,19 @@ const resourceOverview = computed(() => [
title: t('dashboard.node'),
count: resourceCounts.node,
icon: 'vgpu-node',
- unit: '个',
+ unit: t('common.unitCount'),
},
{
title: t('dashboard.card'),
count: resourceCounts.card,
icon: 'vgpu-gpu-d',
- unit: '张',
+ unit: t('common.unitSheet'),
},
{
title: t('dashboard.vgpu'),
count: resourceCounts.vgpu,
icon: 'vgpu-card',
- unit: '个',
+ unit: t('common.unitCount'),
},
{
title: t('dashboard.compute'),
@@ -286,7 +286,7 @@ const cardDetail = useInstantVector([
title: 'vGPU',
count: 0,
query: 'avg(hami_vgpu_count)',
- unit: '个',
+ unit: t('common.unitCount'),
icon: 'gpu2',
},
{
diff --git a/packages/web/src/components/CodePre.vue b/packages/web/src/components/CodePre.vue
index 1929faad..b5cab3a8 100644
--- a/packages/web/src/components/CodePre.vue
+++ b/packages/web/src/components/CodePre.vue
@@ -9,6 +9,9 @@
diff --git a/packages/web/src/components/Confirm/index.js b/packages/web/src/components/Confirm/index.js
index ba3486ec..0ed3f41c 100644
--- a/packages/web/src/components/Confirm/index.js
+++ b/packages/web/src/components/Confirm/index.js
@@ -1,5 +1,6 @@
import ConfirmComponent from './index.vue'
import { createVNode, render } from 'vue'
+import i18n from '@/locales'
const Confirm = {
install(app) {
@@ -8,8 +9,8 @@ const Confirm = {
app.config.globalProperties.$Confirm = (confirmText, confirmObj, fn) => {
if(JSON.stringify(confirmObj) === '{}') {
confirmObj = {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
+ confirmButtonText: i18n.global.t('common.confirm'),
+ cancelButtonText: i18n.global.t('common.cancel'),
type: '',
}
}
diff --git a/packages/web/src/components/Confirm/index.vue b/packages/web/src/components/Confirm/index.vue
index 7748bb0d..aade99e3 100644
--- a/packages/web/src/components/Confirm/index.vue
+++ b/packages/web/src/components/Confirm/index.vue
@@ -65,6 +65,7 @@
diff --git a/packages/web/src/components/TextPlus.vue b/packages/web/src/components/TextPlus.vue
index 8e9f304a..9776e49e 100644
--- a/packages/web/src/components/TextPlus.vue
+++ b/packages/web/src/components/TextPlus.vue
@@ -10,8 +10,10 @@