【发布时间】:2021-03-15 15:09:08
【问题描述】:
我有一个按钮来处理我的语言切换器,它被设置为处理 cookie、url 更改,现在我需要让它来更改我在页面上的翻译。 <img> 标签用于更改国家/地区标志。
<button
onClick={() => {
const locale =
router.locale === 'en-us'? 'da-dk': 'en-us';
setCookie(locale);
{handleOnclick;}
router.push(/${locale}`,
`/${locale}`,
{
locale: false,
}); }} >
{router.locale === 'en-us' ? (
<img src={
menuItems.data.body[5].items[0].image
.url}/> ) : (
<img
src={
menuItems.data.body[4].items[0].image
.url
}/>)}
</button>
语言切换功能handleOnClick 工作正常(已测试)这是一个例子:
<button value="da" onClick={handleOnclick}>
Danish
</button>
<button value="en" onClick={handleOnclick}>
English
</button>
但现在我需要更改 onClick 的值,因为我只有一个按钮而不是 2 个,但我不知道该怎么做
【问题讨论】:
-
将语言作为状态存储在组件中。然后你可以使用 {language == "en" ? "English" : "Danish"} handleOnClick 会做 setState({language: event.target.value}) 如果您想了解更多信息,请告诉我,我可以写一个答案
-
你的意思是像 setLanguage({language: e.target.value}) 一样在我的 handleOnClick 中使用它吗?
-
@GregM 但它不起作用。
标签: reactjs typescript internationalization