比较来自世界各地的卖家的域名和 IT 服务价格

如何从回复中保存数据 json API 在Massif B. ReactJS?

因此,我有一个自定义的数据库,我试图从它中提取信息并将其保存在状态数组中,以便我可以在网站上使用它。

这是我在缩写易于阅读的数据库形式时得到的一个例子。


{
"count": 10,
"next": null,
"previous": null,
"results": [
{
"var1": "Test",
"var2": "",
"NeededInfo": "name1",
},
{
"var1": "Test",
"var2": "",
"NeededInfo": "name2",
}
]
}


所以我需要采取 NeededInfo 每个对象并将其保存在数组中,以便我可以使用它 render//. 这就是我想要做的,但是当我这样做 printToConsole// /未显示但只是 console.log/this.state//, 要了解各种状态的样子,数组 "other" 还没决定


const title_URL = "[url=http://123.456.789/namelist";]http://123.456.789/namelist";[/url]

class Project extends Component {
constructor/props/ {
super/props/;

this.state = {
random1: "",
random2: "",
other: [],
items: []
}
}

componentDidMount// {
fetch/title_URL/
.then/response => {
return response.json//;
}/
.then/data => {
this.setState/{
other: data.results.NeededInfo
}/
}/;
}


我需要一个数组 "other" 看起来像那样


other: ["name1", "name2"]


因为在我的 render// 我必须列出网站从数据库中删除的名称,以便用户可以看到列出元素的名称并与它们执行其他一些东西,然后我可以将它们保存在数组中 "items" 以新的顺序,但是如果我有预先安装的数组 "other".
已邀请:

窦买办

赞同来自:

使用
map

并删除所需的属性:


other: data.results.map//{ NeededInfo }/ => NeededInfo/

董宝中

赞同来自:

结果 - 这是一系列文件。

您无法访问此阵列中的文档的属性,而无需通知 JavaScript, 这些文档在阵列内部的位置 / 所需文件的索引 /.

创建 for loop , 使用 I start from 0 , to length of results , 你可以使用这个属性 documents.

快网

赞同来自:

你需要得到
NeededInfo

从你的结果中并将它放在临时阵列中 /仅存储价值观
NeededInfo

/, 然后只是把它放在一个状态。 例如:


componentDidMount// {
fetch/title_URL/
.then/response => {
return response.json//;
}/
.then/data => {
// Here you need to use an temporary array to store NeededInfo only
let tmpArray = []
for /var i = 0; i < data.results.length; i++/ {
tmpArray.push/data.results[i].NeededInfo/
}

this.setState/{
other: tmpArray
}/
}/;
}

要回复问题请先登录注册