与上一篇文章连接。
四、数据处理
从上面 jquery 的 ajax 来看,ajax 并不是难题,其实需要我们花心思的是数据处理,你拿到数据,想执行什么,想让数据怎么展示,就需要前端好好处理。
数据处理是很重要的部分,各种遍历,各种取值,不要出错。
五、跨域
跨域:当你访问一个网址(不是你本地网址 如:localhost),你不能从当前域,访问别人的域。
为什么会有跨域问题?因为安全问题。仔细想想,没有跨域,任意一个网站都能访问你自己的数据,你会不会被气死。
代表域相同:协议、(域名)IP、 端口 三者都相同代表域相同,不用跨域。其他情况都需要跨域。
如何解决跨域?
方案一:让对应访问的那个域给你开放一个请求头
方案二:转接,首先访问自己同域的后端,让自己的后端去发起请求(后端与后端没有跨域)
方案三:某些特定格式的数据,可以使用 jsonp 的形式。
七、promise
axios,fetch会用到promise
函数:res/rej
pending 进行中
resolve 成功
reject 失败
promise的意义:将一个左右纵深的结构(回调地狱),变成上下结构。
//没有使用promise
//隔一秒打印一个数字(异步),代码写的越来越深(回调地狱,不利于维护)
setTimeout(()=>{
console.log("1");
setTimeout(()=>{
console.log("2");
setTimeout(()=>{
console.log("3");
setTimeout(()=>{
console.log("4");
},1000);
},1000);
},1000);
},1000);
使用 promise 来完成:
new promise(res=>