Я не могу получить доступ к объекту массива внутри объекта.
[Обновление:] Я извлекаю данные из следующего API и сохраняю их в exchangeURL
"https://api.cryptonator.com/api/full/btc-usd"
Здесь я отправляю действие, которое сохраняет response.data
из этогоapi
export const exchangeToDisplay = (exchangURL) => {
return function (dispatch) {
dispatch({type: EXCHANGE_CURRENCY_FETCHING })
axios.get(exchangURL).then((response) => {
console.log(response)
return(
dispatch({
type: EXCHANGE_CURRENCY_FETCH_SUCCESS,
payload: response.data
})
)
}).catch((error) => {
console.log(error)
return (
dispatch({
type: EXCHANGE_CURRENCY_FETCH_ERROR,
payload: error
})
)
})
}
}
Теперь я являюсь компонентом реагирования с состоянием (рендеринга), когда я делаю что-то вроде этого
if (!this.props.exchangeLoading && !this.props.exchangeError) {
console.log(this.props.exchange.ticker)
}
он выдает / дает мне следующий ответ
{base: "BTC", target: "USD", price: "6566.31298848", volume: "28234.81119471", change: "-3.03860702", …}
base: "BTC"
change: "-3.03860702"
markets: (13) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
price: "6566.31298848"
target: "USD"
volume: "28234.81119471"
__proto__: Object
Теперь я хочу получить доступ к массиву рынков внутри данного объекта, поэтому я сделал что-то вроде этого
if (!this.props.exchangeLoading && !this.props.exchangeError) {
console.log(this.props.exchange.ticker["markets"])
}
Он выдает ошибку типа, говорящую Ошибка типа: не удается прочитать свойства 'markets' из неопределенного
[Примечание:] Выше биржевого реквизита идет из магазина приставок
const mapStateToProps = state => {
return {
exchange: state.exchange.DataSucess,
exchangeLoading: state.exchange.DataFetching,
exchangeError: state.exchange.DateError
}
}
Вопрос: Что я здесь не так делаю?Дайте мне знать, если мне нужно поделиться чем-то еще