【发布时间】:2019-03-29 07:08:28
【问题描述】:
我正在尝试开发示例 Reactjs Web 应用程序,其中尝试使用 REST API 并获取一些 json 数据。请看代码。
在 Visual Studio 中本地执行代码后,我正在检查 chrome 浏览器,但 chrome 控制台日志中没有打印任何内容。我认为,以下代码不会获取数据。我在这段代码中没有发现任何错误。有人可以帮忙指导一下吗?
我使用 axios 和 URL : https://jsonplaceholder.typicode.com/users 来获取数据
import React from 'react'
import ReactDOM from 'react-dom'
import './index.css'
import App from './App'
import registerServiceWorker from './registerServiceWorker'
import axios from 'axios'
ReactDOM.render(<App />, document.getElementById('root'))
registerServiceWorker()
var element = React.createElement(
'h1',
{ className: 'greeting' },
'Test Welcome Message.!'
)
ReactDOM.render(element, document.getElementById('root'))
registerServiceWorker()
export default class ItemLister extends React.Component {
state = {
persons: []
}
componentDidMount() {
axios.get('https://jsonplaceholder.typicode.com/users').then(response => {
// Handle service success response
console.log(response.data)
const persons = response.data;
this.setState({ persons });
})
}
render() {
return <ul>{this.state. persons.map(person => <li>{person.name}</li>)}</ul>
}
}
【问题讨论】:
-
看起来你没有渲染 ItemLister。或者这是在其他地方完成的?
-
您的
setState()正在更新状态属性persons而不是products。您没有看到此结果,因为您正在循环/映射products而不是persons。
标签: reactjs