gpt4 book ai didi

javascript - 条件(动态)解构

转载 作者:行者123 更新时间:2023-12-03 07:18:13 30 4
gpt4 key购买 nike

根据所选语言,我需要销毁对象并获得所需的值。
我该怎么做才能不破坏整个对象?

const translate = {
"navMenu1": {
"en": "Menu 1",
"ru": "Меню 1"
},
"navMenu2": {
"en": "Menu 2",
"ru": "Меню 2"
},
"navMenu3": {
"en": "Menu 3",
"ru": "Меню 3"
}
}

const Header = props => {
const { lang } = props;

const {
navMenu1,
navMenu2,
navMenu3
} = translate;

return (
<header className={cnGreetingHeader}>
<div>-Logo-</div>
<nav className={cnNav}>
<div className={cnItem}>{navMenu1[lang]}</div>
<div className={cnItem}>{navMenu2[lang]}</div>
<div className={cnItem}>{navMenu3[lang]}</div>
</nav>
</header>
);
};

我想要的

<div className={cnItem}>{navMenu1[lang]}</div> 

使用

<div className={cnItem}>{navMenu1}</div>

重要提示:如果可能的话,我想要一个使用解构赋值的答案。

最佳答案

虽然你问的是解构,但你可以只映射对象值,它更具可扩展性,当你有更多的导航项时会发生什么?

<nav className={cnNav}>
{Object.values((navMenu) => (
<div key={navMenu.id} className={cnItem}>
{navMenu[lang]}
</div>
))}
</nav>

关于javascript - 条件(动态)解构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64304098/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com