【发布时间】:2021-09-26 06:42:59
【问题描述】:
我正在尝试使用 useState 来更改我网站的语言。但是,由于我是新手,我在思考如何做到这一点的逻辑时遇到了问题。
第一个问题:
点击<li>时如何使用“handleLanguage”功能更改菜单语言。
第二个问题: 通过单击选项更改整个语言网站的最佳方式是什么?因为正如我所见,现在如果我单击,只会更改一个组件。
代码:
const languages = {
en: {
about: "about",
project: "project",
contact: "contact",
slogan: "Think the Design, and I design the Code.",
button: "Learn more",
},
ptbr: {
about: "sobre",
project: "projetos",
contact: "contatos",
slogan: "Think the Design, and I design the Code.",
button: "Learn more",
},
jp: {
about: "nihon",
project: "nihon",
contact: "nihon",
slogan: "nihon",
button: "nihon",
},
ru: {
about: "руский",
project: "руский",
contact: "руский",
slogan: "руский",
button: "руский",
},
};
const RightNav = ({ open }) => {
const [text, setText] = useState("en");
const handleLanguage = (e) => {
setText("ptbr");
};
return (
<>
<Ul open={open}>
<li>{languages.en.about}</li>
<li>{languages.en.project}</li>
<li>{languages.en.contact}</li>
<li className="image">
<img src={English} alt="EN" />
</li>
<li className="image">
<img src={Japanese} alt="JP" />
</li>
<li className="image">
<img src={Russian} alt="RU" />
</li>
<li className="image">
<img src={Portuguese} alt="PT-BR" onClick={handleLanguage} />
</li>
</Ul>
</>
);
};
【问题讨论】:
标签: javascript reactjs react-hooks localization use-state