我无法与下面代码中的最后一行相关联
componentWillMount(){
fetch( 'https://swapi.co/api/people/?format=json' )
.then( response => response.json() )
.then( ({results: items}) => this.setState({items}))
}
最后一个有{results: items}
,然后如果以es5方式解释,它会设置或分配{items:items}。但我无法提及论证的方式。
为什么我们不能做
.then( (items) => this.setState({items}))
请指教!
答案 0 :(得分:1)
在您的回复中看起来有一个名为'结果'并且你想设置'项目'在你的州的对象。所以如果你刚才说
.then( (items) => this.setState({items}))
它会寻找'项目'对象并将其设置为状态中的项目对象。但是,您的回复中的对象并未被称为“项目”,它被称为“结果”。所以首先将它从结果重新标记为项目,然后将其用作参数。所以:
.then( ({results: items}) => this.setState({items}))
与
相同.then( ({results}) => this.setState({items: results}))