Reactjs传递大写的动态变量

问题描述 投票:1回答:2

我有一个问题将动态变量传递给其他组件。 我有一些对象,其中包含其他对象:

var myArr = {"1": {
"name": "rose", 
"symbol":"ros", 
"quotes": { 
    "USD": {
        "price": "10"
    }
}}}

这是我试图将变量传递给我的组件的方式:

<MyComponent
 key={index}
 name={item.name}
 symbol={item.symbol}
 price={item.quotes.USD.price}
/>

这样做,我得到错误:

TypeError: Cannot read property 'USD' of undefined

我也尝试传递价格变量,如下所示:

<MyComponent
 key={index}
 name={item.name}
 symbol={item.symbol}
 price={item.quotes.${USD}.price}
/>

但无法编译错误:

Failed to compile
price={item.quotes.${USD}.price}
                   ^

如何传递包含大写的动态变量?

javascript reactjs
2个回答
1
投票

仔细检查您的代码后,我发现您错过了索引:

price={item[index].quotes.USD.price}

1
投票

你可能想做这样的事情:

var myArr = {"1": {
"name": "rose", 
"symbol":"ros", 
"quotes": { 
"USD": {
    "price": "10"
}
}}}

myArr['1'].quotes.USD.price

(要么)

myArr['1'].quotes['USD'].price
© www.soinside.com 2019 - 2024. All rights reserved.