i18n 후크를 사용한 React 번역
5467 단어 hookreactnpmjavascript
소개
최근 내 작업에서 React로 빌드된 프로젝트에 대한 번역을 포함해야 할 필요성이 생겼습니다. 나는 누군가가 도움이 될 것이라고 생각하는이 솔루션을 조사하고 찾아 왔습니다.
필요한 패키지 설치
이러한 패키지를 설치하려면 이전에 설치 및 구성해야 합니다npm.
npm을 설치했으면 다음 패키지를 설치해야 합니다.
npm install --save i18next
npm install --save react-i18next
npm install --save i18next-browser-languagedetector
번역이 저장될 파일 생성
src 내에 translations라는 폴더를 생성하고, translations 폴더 내에 번역을 추가할 각 언어에 대한 폴더를 생성합니다.
./src
./translations
./es
./translations.js
이 경우 스페인어에 대한 번역이 저장된 translation.js 파일을 생성합니다.
// File: translations.js
export const TRANSLATIONS_ES = {
"female": "Femenino"
}
i18n용 구성 파일 생성
./src
./translations
./i18n.js
다음 내용으로:
// File: i18n.js
import i18n from "i18next";
import { initReactI18next } from "react-i18next";
import LanguageDetector from "i18next-browser-languagedetector";
// import translations file
import { TRANSLATIONS_ES } from '../translations/es/translations'
i18n
.use(LanguageDetector)
.use(initReactI18next)
.init({
resources: {
es: {
// use translations file for spanish resources
translation: TRANSLATIONS_ES,
},
}
});
구성 요소에서 번역을 위한 후크 사용
// File: ExampleComponent.js
// import hook for translations and i18n configuration file
import { useTranslation } from "react-i18next";
import '../../translations/i18n.js';
export const ExampleComponent = () => {
// destructuring t() function for useTranslation()
const { t } = useTranslation();
return (
{// using t() function for translate}
<p>{ t('female') }</p>
)
}
읽어주셔서 감사합니다. 😊
Reference
이 문제에 관하여(i18n 후크를 사용한 React 번역), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/wealize/translations-for-react-using-i18n-hook-1616텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)