【发布时间】:2018-08-23 15:58:55
【问题描述】:
class ItemsPage extends React.Component {
constructor(props)
{
super(props)
this.state = {items: null }
this.fetchImages = this.fetchImages.bind(this)
}
fetchImages()
{
var self = this
axios.get('https://api.instagram.com/v1/users/self/media/recent/?access_token=')
.then(function (result) {
const items = result
self.setState({ items: 'test' })
});
}
componentDidMount()
{
this.fetchImages()
console.log(this.state.items)
}
render () {
return (
<div>Test</div>
);
}
}
我将items 设置为null 和console.log,而null 仍然出现
我已经尝试记录结果,我得到了我的数据我正在寻求帮助!
也试过在es6中使用箭头函数还是不行setState
【问题讨论】:
-
你在哪里打电话
fetchImages()?你在哪里记录结果? -
在componentDidMount中
-
你能展示你剩下的组件代码吗?
-
你在哪里检查状态是否设置?因为 setState 是一个异步函数调用。调用 setState 函数后,将不会立即看到新状态。
标签: javascript reactjs fetch nodes axios