実現したいこと
json内で変数として文字列の中身に組み込み、APIから受け取った情報からそれをreactにてセットしたい。
useTranslationを用いるためこのような仕組みが実現可能か知りたい。
現状のコード
json
1{ 2 "text": { 3 "title": "{{name}}にようこそ", 4 "heading": "{{name}}のサイトです", 5 } 6}
tsx
1import * as React from 'react' 2import { useState, useEffect } from 'react' 3import { useTranslation } from 'react-i18next' 4 5const Page: React.FC = (props) => { 6 const [name, setName] = useState('test') 7 const { t } = useTranslation('default') 8 9 useEffect(() => { 10 (async () => { 11 const res = await props.fetcher() 12 13 setHumanizeName(res.data.name) 14 })() 15 }, []) 16 17 return( 18 (useTranslationを用いてjsonを出力) 19 <h1>{t('text.title')}</h1> 20 <h2>{t('text.heading')}</h2> 21 )
この方法の場合{{name}}の部分は何もない状態でtitleだと「にようこそ」とのみ表示される状態です。
そもそもこの方法が不可能な場合は他の方法があれば教えていただきたいです。
回答1件
あなたの回答
tips
プレビュー