React中如何用字符串变量动态访问对象属性值?
React动态使用变量访问对象属性的解决办法
在React里要通过变量动态获取对象属性值,你得用方括号属性访问语法,点语法只能写固定的属性名,没法解析变量。
给你改成正确的代码:
const language = "DE"; // 假设array是你的对象数组,每个item结构类似 {"DE": "Deutsch", "EN": "English", "ID": xxx} {array?.map((item) => ( <div key={item.ID}> <p>{item[language]}</p> </div> ))}
这样当language是"DE"时,item[language]就等价于item["DE"],会直接返回"Deutsch";如果language改成"EN",就会返回"English",完全满足你的需求。
你之前尝试的{item.{language}}是无效的JavaScript语法,JS不支持这种写法,必须用方括号把变量包裹起来,才能实现动态解析属性名的效果。
内容的提问来源于stack exchange,提问作者u4ii4y984484y203r
相关产品推荐
相关产品推荐

