【发布时间】:2018-02-28 06:53:27
【问题描述】:
我是 REACT 的新手,我正在尝试学习如何从存储在 url 中的 json 样式消息中获取和显示特定参数。
例如,我试图显示的视频存储在 url 中,它是 json 消息本身的一个字段,所以它看起来像这样:
{
"type": "video",
"url": "http://somewebsite.com/wantedvideo.mp4"
}
根据我的阅读,fetch() 是获取数据的一种方式,但不幸的是,我似乎无法理解我尝试过的代码中可能缺少什么:
这是我的新手尝试:
import React, {Component} from 'react';
class App extends Component{
constructor()
{
super();
this.state={
data: [],
}
}
componentDidMount()
{
fetch('https://demo7443497.mockable.io/stream/video')
.then((response) => response.json())
.then((findresponse)=>{
console.log(findresponse.url)
this.setState({
data:findresponse.url,
})
})
}
render()
{
return(
<div>
{this.state.data.url}
</div>
)
}
}
export default App;
我的render() 对我来说总是看起来太简单了,所以对于我可能犯的任何“疯狂”错误,我深表歉意
PS:如果url字段的url中不是视频而是其他数据格式,例如图像或纯文本,那么使用相同的代码来获取它有什么缺点吗?
谢谢
【问题讨论】:
-
首先,看上面的代码,state中的data变量是一个数组,你试图显示this.state.data.url,这是错误的。
标签: json reactjs react-native