Các phương pháp hay nhất
Cách nhanh nhất để có bản dịch tệ là bắt thời gian chạy phải xoay xở để xử lý những vấn đề về cấu trúc ứng dụng có thể tránh được.
Dùng tên ngữ cảnh thực
Các khóa ngữ cảnh tốt giải thích bản sao nằm ở đâu:
await engine.t('Pay now', {
context: 'checkout.payment-form',
});
await engine.t('Billing history', {
context: 'dashboard.billing-history',
});
await engine.t('Simple pricing', {
context: 'marketing.pricing-hero',
});Tránh các nhóm không rõ tên như page1, copy hoặc misc.
Dịch các ý nghĩ hoàn chỉnh
Tốt:
const label = await engine.t('Download your latest invoice as PDF');Tránh:
18ways có thể xử lý trường hợp liên kết thông thường như một thông điệp. <T><a href="#">Nhấp vào đây</a> để xem thêm</T> nên giữ nguyên thành một câu thay vì bị tách ra rồi ghép lại với nhau.
const first = await engine.t('Download');
const second = await engine.t('your latest invoice');
const third = await engine.t('as PDF');
const stitched = [first, second, third].join(' ');Giữ ranh giới của gói rõ ràng
- Nếu bạn dùng Next.js, hãy sử dụng
@18ways/nextđể phân giải ngôn ngữ và siêu dữ liệu. - Nếu bạn chỉ dùng React, hãy giữ trạng thái locale trong ứng dụng của bạn và dùng
@18ways/react. - Nếu bạn đang ở bên ngoài React, hãy dùng
@18ways/corevà tự phụ trách phần tích hợp UI.
Hãy để định tuyến phù hợp với sản phẩm của bạn
Các trang marketing công khai thường muốn định tuyến locale dựa trên đường dẫn để phục vụ SEO. Các trang dashboard nội bộ và các tuyến công cụ nội bộ thường thì không. Đó là lý do vì sao site hiện tại loại trừ /dashboard,
/__design, và /__email khỏi định tuyến theo đường dẫn.
Giữ bản sao nguồn ở dạng con người
18ways hoạt động hiệu quả nhất khi văn bản nguồn đọc tự nhiên như nội dung giới thiệu sản phẩm thật, chứ không giống một khóa dịch được nén lại.
Bản sao nguồn tốt cung cấp cho mô hình ngữ cảnh tốt hơn và giúp đội ngũ của bạn có thứ dễ đọc trong mã.