Перевести контент из ответа Axios
Я использую linguijs для перевода в своем приложении Vite. У меня есть файл локали в формате JSON для переведенного контента. Я использую Axios для обработки запросов.
Языки извлекают ключи (английский) для перевода. Для перевода я использую Crowdin. Моя проблема заключается в том, как извлечь содержимое API, должны ли API иметь арабскую и английскую версию или можно ли перевести английский API на стороне клиента? Я ищу ответы, как это делается.
export async function getCourse(id: string) {
const response = await axios.get(`/course/${id}`);
return response;
}
// course component
import { useState } from "react";
import { t, Trans } from "@lingui/macro";
const Course = ()=>{
const [course, setCourse] = useState([])
const getCourseHandler = async (id:string) => {
try {
let response = await getCourse(id);
if (response.success) {
setCourse(response.data.course)
navigate("/dashboard");
}
} catch (error: any) {
console.log(error
}
return(
<>
<h1>heading text<h1/>
{course.map(({_id,title,author,course_sections}:Courses,index: number) => {
return (
<div className="availablecourses__courses-content__bottom">
<p className="availablecourses__courses-content__bottom-text">
{t`${title}`}
</p>
<p className="availablecourses__courses-content__bottom-author">
{" "}
{t`${author}`}
</p>
<p className="availablecourses__courses-content__bottom-coursenumber">
{" "}
{t`${course_sections.length}`} course sections
</p>
</div>}
</>
)}
Кстати, у меня есть кнопка выбора языка, которая переключает между английским и арабским языками. я не знаю, как лучше всего подойти к решению подобной проблемы, но я открыт для предложений.
1 ответ
{t`${title}`}
Это не сработает. Все сообщения должны быть определены на месте.
LinguiJs не предназначен для перевода вашего контента.