将一个数组的数据复制到 javascript/react 中的另一个数组
Copying data of one array with transformation into another array in javascript/react
我的 API 返回低于输出。
[
"ANT",
"ARG",
"ARM",
"BUR",
"UAE"
]
在我的数组中,我需要存储与这些 countrycode
对应的 countryname
。
为此,我在 react
中使用了 country-data
库。
这样我就可以得到像 console.log(countries["UAE"].name);
这样的输出
我需要在下面声明的 countryData
数组中存储国家/地区名称。
我的反应代码是。
this.state = {
countryData: [],
};
我正在使用如下数组代码。
updateDropdownData() {
axios.get(`http://localhost:8080/country_code`).then((res) => {
res.data.map((code) => {
alert(countries[code].name);
countryData.push.apply(countryData, countries[code].name);
});
this.setState({ countryData });
});
}
但我收到错误
index.bundle.js:122 Uncaught (in promise) ReferenceError: countryData is not defined
at index.bundle.js:122:217123
at Array.map (<anonymous>)
我犯了什么错误。我是 javascript
和 react
的新手。
编辑1:-
alert(countries[res.data[0]].name);
//此行有效。
但 const _countryData = res.data.map((code) => countries[code].name);
给出错误。
直接改变状态值不符合React的方式
updateDropdownData() {
axios.get(`http://localhost:8080/country_code`).then((res) => {
const _countryData = res.data.map((code) => countries[code].name )
this.setState({ countryData: _countryData });
});
}
编辑
The countries
variable must be where you run it. And the shape of
the variable should be as follows.
const countries = {
"ANT" : { name : "ant_name" },
"ARG" : { name : "arg_name" },
...
}
我的 API 返回低于输出。
[
"ANT",
"ARG",
"ARM",
"BUR",
"UAE"
]
在我的数组中,我需要存储与这些 countrycode
对应的 countryname
。
为此,我在 react
中使用了 country-data
库。
这样我就可以得到像 console.log(countries["UAE"].name);
这样的输出
我需要在下面声明的 countryData
数组中存储国家/地区名称。
我的反应代码是。
this.state = {
countryData: [],
};
我正在使用如下数组代码。
updateDropdownData() {
axios.get(`http://localhost:8080/country_code`).then((res) => {
res.data.map((code) => {
alert(countries[code].name);
countryData.push.apply(countryData, countries[code].name);
});
this.setState({ countryData });
});
}
但我收到错误
index.bundle.js:122 Uncaught (in promise) ReferenceError: countryData is not defined
at index.bundle.js:122:217123
at Array.map (<anonymous>)
我犯了什么错误。我是 javascript
和 react
的新手。
编辑1:-
alert(countries[res.data[0]].name);
//此行有效。
但 const _countryData = res.data.map((code) => countries[code].name);
给出错误。
直接改变状态值不符合React的方式
updateDropdownData() {
axios.get(`http://localhost:8080/country_code`).then((res) => {
const _countryData = res.data.map((code) => countries[code].name )
this.setState({ countryData: _countryData });
});
}
编辑
The
countries
variable must be where you run it. And the shape of the variable should be as follows.
const countries = {
"ANT" : { name : "ant_name" },
"ARG" : { name : "arg_name" },
...
}