【发布时间】:2019-10-05 17:26:02
【问题描述】:
我对 React 还很陌生。我正在从 API 获取数据,当我检查控制台日志时可以看到数据。但是我不知道如何使用 map() 创建一个新数组,然后选项元素可以使用该数组来显示货币代码。
目前它填充下拉列表,但选项元素全部为空,结果显示为 NaN。
下面是我获取数据的代码示例。
state = {
currencies: [],
base: "USD", //default value
amount: "",
convertTo: "EUR",
result: ""
};
componentDidMount() {
fetch("https://api.exchangeratesapi.io/latest")
.then(response => {
return response.json();
})
.then(data => {
let currenciesFromApi = Object.keys(data.rates);
console.log(currenciesFromApi);
this.setState({
currencies: currenciesFromApi
});
})
.catch(error => {
console.log(error);
});
}
预期结果:下拉列表将填充来自 API 的货币代码(例如 GBP、EUR、USD)和值以显示汇率而不是 NaN。
实际结果:下拉列表为空,选择其中任何一个也会返回 Nan。
【问题讨论】:
标签: javascript reactjs ecmascript-6 fetch-api