From eb1b1a3153768c301aafde91ce3d0c1189e4a33b Mon Sep 17 00:00:00 2001 From: zhonghua Date: Tue, 17 Mar 2026 17:56:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E5=8C=85=E8=AF=A6=E6=83=85:?= =?UTF-8?q?=20=E6=A0=B8=E5=BF=83=E5=8F=91=E5=B1=95=E7=9B=AE=E6=A0=87?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=BF=BB=E8=AF=91=E4=B8=BA=E4=B8=AD=E6=96=87?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Made-with: Cursor --- .../src/views/admin/courses/CourseDetailView.vue | 5 +++-- .../src/views/school/courses/CourseDetailView.vue | 8 +++++--- .../src/views/teacher/courses/CourseDetailView.vue | 9 +++++---- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/reading-platform-frontend/src/views/admin/courses/CourseDetailView.vue b/reading-platform-frontend/src/views/admin/courses/CourseDetailView.vue index 966dd4b..76f54ad 100644 --- a/reading-platform-frontend/src/views/admin/courses/CourseDetailView.vue +++ b/reading-platform-frontend/src/views/admin/courses/CourseDetailView.vue @@ -448,6 +448,7 @@ import { EnvironmentOutlined, } from '@ant-design/icons-vue'; import * as courseApi from '@/api/course'; +import { translateDomainTags } from '@/utils/tagMaps'; import FilePreviewModal from '@/components/FilePreviewModal.vue'; const router = useRouter(); @@ -527,12 +528,12 @@ const grades = computed(() => { } }); -// 领域标签 +// 领域标签(核心发展目标,翻译为中文) const domainTags = computed(() => { if (!course.value.domainTags) return []; try { const tags = JSON.parse(course.value.domainTags); - return tags; + return translateDomainTags(Array.isArray(tags) ? tags : []); } catch { return []; } diff --git a/reading-platform-frontend/src/views/school/courses/CourseDetailView.vue b/reading-platform-frontend/src/views/school/courses/CourseDetailView.vue index d0436ba..34f1ce1 100644 --- a/reading-platform-frontend/src/views/school/courses/CourseDetailView.vue +++ b/reading-platform-frontend/src/views/school/courses/CourseDetailView.vue @@ -457,6 +457,7 @@ import { EnvironmentOutlined, } from '@ant-design/icons-vue'; import * as schoolApi from '@/api/school'; +import { translateDomainTags } from '@/utils/tagMaps'; import FilePreviewModal from '@/components/FilePreviewModal.vue'; const router = useRouter(); @@ -539,14 +540,15 @@ const grades = computed(() => { } }); -// 领域标签 +// 领域标签(核心发展目标,翻译为中文) const domainTags = computed(() => { if (!course.value.domainTags) return []; try { const tags = JSON.parse(course.value.domainTags); - return Array.isArray(tags) ? tags : []; + const arr = Array.isArray(tags) ? tags : []; + return translateDomainTags(arr); } catch { - return Array.isArray(course.value.domainTags) ? course.value.domainTags : []; + return Array.isArray(course.value.domainTags) ? translateDomainTags(course.value.domainTags) : []; } }); diff --git a/reading-platform-frontend/src/views/teacher/courses/CourseDetailView.vue b/reading-platform-frontend/src/views/teacher/courses/CourseDetailView.vue index 1a380d8..2741b30 100644 --- a/reading-platform-frontend/src/views/teacher/courses/CourseDetailView.vue +++ b/reading-platform-frontend/src/views/teacher/courses/CourseDetailView.vue @@ -467,7 +467,7 @@ import { } from '@ant-design/icons-vue'; import { message } from 'ant-design-vue'; import * as teacherApi from '@/api/teacher'; -import { translateGradeTags } from '@/utils/tagMaps'; +import { translateGradeTags, translateDomainTags } from '@/utils/tagMaps'; import FilePreviewModal from '@/components/FilePreviewModal.vue'; const router = useRouter(); @@ -551,14 +551,15 @@ const grades = computed(() => { } }); -// 领域标签 +// 领域标签(核心发展目标,翻译为中文) const domainTags = computed(() => { if (!course.value.domainTags) return []; try { const tags = JSON.parse(course.value.domainTags); - return Array.isArray(tags) ? tags : []; + const arr = Array.isArray(tags) ? tags : []; + return translateDomainTags(arr); } catch { - return Array.isArray(course.value.domainTags) ? course.value.domainTags : []; + return Array.isArray(course.value.domainTags) ? translateDomainTags(course.value.domainTags) : []; } });