学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习
本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所偏差,在学习中如果有错会及时修改内容,也欢迎万能的朋友们批评指出,谢谢
文章第一版出自简书,如果出现图片或页面显示问题,烦请转至 简书 查看 也希望喜欢的朋友可以点赞,谢谢
componentDidMount
方法中创建 Ajex 请求,等到请求成功,再用 this.setState
方法重新渲染UI
fetch(request_url)
.then((response) => response.json())
.catch((error) => {
resultData.shopData = undefined;
this.setState({
dataSource: this.getDataSource([]),
isLoading: false
});
})
.then((responseData) => {
resultData.shopData = responseData.data;
this.setState({
dataSource: this.getDataSource(responseData.data)
});
})
.done();
React Native 中已经内置了 XMLHttpRequest API,一些基于XMLHttpRequest封装的第三方库也可以使用(如:axios、frisbee)但不能使用 jQuery,因为 jQuery中还使用了很多浏览器才有而RN中没有的东西
var request = new XMLHttpRequest();
request.onreadystatechange = (e) => {
if (request.readyState != 4) {
return;
}
if (request.status === 200) {
console.log('success', request.responseText);
} else {
console.warn('error');
}
}
request.open('GET', 'https://mywebsite.com/endpoint/');
request.send();
注意:由于安全机制与网页环境有所不同:在应用中你可以访问任何网站,没有跨域的限制
React Native 还支持 WebSocket
,这种协议可以在单个TCP连接上提供全双工的通信信道
var ws = new WebSocket('ws://host.com/path');
ws.onopen = () => {
// 打开一个连接
ws.send('something'); // 发送一个消息
};
ws.onmessage = (e) => {
// 接收到了一个消息
console.log(e.data);
};
ws.onerror = (e) => {
// 发生了一个错误
console.log(e.message);
};
ws.onclose = (e) => {
// 连接被关闭了
console.log(e.code, e.reason);
};
下载说明
☉本站所有源码和资源均由站长亲自测试-绝对保证都可以架设,运营!
☉如源码和资源有损坏或所有链接均不能下载,请告知管理员,
☉本站软件和源码大部分为站长独资,资源购买和收集,放心下载!
☉唯一站长QQ:1004003180 [人格担保-本站注重诚信!]
☉购买建议E-mail:1004003180@qq.com 源码收购 E-mail:1004003180@qq.com
☉本站文件解压密码 【文章内都自带解压密码,每个密码不同!】