Tài liệu

Chức năng dịch

Đôi khi bạn cần dịch nội dung không phải là một phần của JSX của bạn, ví dụ siêu dữ liệu của trang Next.js. Hàm t() trả về bởi createLocalizedT dịch bất kỳ chuỗi nào.

import type { Metadata } from 'next';
import { createLocalizedT } from '@magic-translate/react-ssr';
import { translate } from '@/lib/translate';
export async function generateMetadata({
params
}: {
params: Promise<{ locale: string }>;
}): Promise<Metadata> {
const { locale } = await params;
const { t } = createLocalizedT(translate, locale);
return {
title: await t('This page title will be translated'),
description: await t('And so will this description')
};
}

Bạn cũng có thể gọi trực tiếp hàm translate từ thiết lập. Nó chấp nhận một ngôn ngữ, văn bản để dịch và một đối tượng cài đặt tùy chọn và trả về một lời hứa giải quyết cho bản dịch.

import { Language } from '@magic-translate/react-ssr';
const translation = await translate(
Language.ZH,
'This sentence will be translated to Chinese'
);

Cả hai đều lấy id, để tự chỉnh sửa cách sử dụng văn bản này:

const title = await t('Save', { id: 'checkout-save' });
const translation = await translate(Language.DE, 'Save', {
id: 'checkout-save'
});