Di chuyển i18n

Di chuyển namespace i18n

Trong phiên bản 2026.3.0, tất cả khóa i18n trong giao diện admin được di chuyển sang namespace chuẩn. Hệ thống alias chữ cái đơn cũ đã bị xóa.

Bảng ánh xạ khóa

Tiền tố cũTiền tố mớiPhạm vi
n.*nav.*Nhãn điều hướng
e.*enum.*Danh sách liệt kê và tùy chọn
t.*text.*Văn bản giao diện chung
t.educ.*text.educ.*Văn bản riêng Giáo dục
e.attr.*enum.attr.*Liệt kê thuộc tính

Ví dụ

# Điều hướng
n.a.subject     → nav.a.subject
n.b.apply       → nav.b.apply
n.b.cancel      → nav.b.cancel
n.b.save        → nav.b.save

# Liệt kê
e.date          → enum.date
e.status        → enum.status

# Văn bản chung
t.page_title    → text.page_title
t.confirm       → text.confirm

# Giáo dục
t.educ.semester → text.educ.semester

Những gì đã bị xóa

Hàm applyLegacyAliases() ánh xạ tiền tố cũ sang mới đã bị xóa. Điều này có nghĩa:

  • Khóa cũ như n.b.save sẽ không được giải quyết tại runtime.
  • Tất cả component Vue phải sử dụng khóa chuẩn trực tiếp.
  • Tải tệp locale admin cũ (LEGACY_ADMIN_LOCALE_FILES) đã bị xóa.

Namespace Quản lý CMS

Module Quản lý CMS mới sử dụng tiền tố text.cmsm.*:

text.cmsm.dashboard_title
text.cmsm.domain_list
text.cmsm.customer_create

Cách di chuyển code tùy chỉnh

  1. Tìm kiếm tiền tố cũ (n., e., t.) trong tệp Vue.
  2. Thay thế bằng tiền tố chuẩn (nav., enum., text.).
  3. Bọc định nghĩa cột và mảng tùy chọn trong computed() để đảm bảo phản ứng i18n.
// Trước (lỗi)
const columns = [
    { title: t('n.b.name'), dataIndex: 'name' },
]

// Sau (đúng)
const columns = computed(() => [
    { title: t('nav.b.name'), dataIndex: 'name' },
])

Không tương thích ngược

Không có lớp dự phòng. Code sử dụng tiền tố cũ sẽ hiển thị khóa thô thay vì văn bản đã dịch. Kiểm tra tất cả component tùy chỉnh trước khi nâng cấp.