Перевести контент из ответа 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 не предназначен для перевода вашего контента.

Другие вопросы по тегам