00:00
刚刚啊,我们已经通过javascript给大家演示了这个阿贾克斯请求已经演示了,那么对于概念当中我们提到的,我们说阿贾克斯是浏览器通过GS异步发起请求局部更新页面的一种技术,那我们对这个话进行解释一下哈,首先我们先解释局部更新吧啊,因为这个比较简单,一看就知道啥意思了,啥叫做局部更新?啥叫做局部更新,大家看一下哈,对于我们刚刚发起这个请求的时候,首先浏览器地址栏它没有变吧,这第一点,第二点,原来页面中的内容其实是没有发生变化的,哪里改了,只是大家看到哈,是这个页面当中是不是div里的内容改变了,其他的内容没有改变。没错吧,就比如说我我再给你写个哎,什么东西呢,Table写简单的哈,走1.1,呃,再复制一下1.2。
01:08
然后再复制另一个行啊好啊,波一行了,简单写个表格哈,那么大家注意看,比如说我在这里再加个表格,我点击请求,整个页面是不是除了中间这个div有变化,其他地方都没变化呀,那这个叫做局部更新。这叫做局部更新,好了,大家注意看一下哈,我们简单说一下阿贾克斯请求的局部。的局部更新啊,有什么特点呢?那么浏览器地址栏不会发生变化,第二局部更新不会,什么东西呢?舍弃原来页面的内容,记住原来页面的内容它不变,它不像我们以前的请求,我给你举个例子啊,比如说咱们以前的请求。
02:13
啊,以前的请求是什么样子啊,我在这里呢,加一个A标签对吧,我加一个A标签好,并且我在这里访问的地址呢,还是它,你看这是以前的请求哈,来我复制过来放在这里好。咱们说以就是非。非阿贾特请求对吧?好,你看看这个情况哈,那我们刷新一下,你看以前的时候我一点地址栏就发生变化了,原来页面的内容是不是都没有了,能看见了吗?这就叫做局部更新,哦,不对,这个就不是局部更新哈,哎,局部更新就是什么。就是你看点这个,我点完了以后,整个页面还在地址两眼没变,你看只是页面当中个别小部分的内容发生变化。
03:08
这是第一个局部更新,第二个异步请求是什么?什么叫做异步请求来?我给你演示一下哈,那现在这个我就先做掉了,这我先做掉了哈,现在大家请看。我现在啊,把这个值改成为for,那么我们说for是什么?是for是同步。同步请看哦,我们在下面乐的一下,我们说我是最后一行的代码。是吧,我是最后一行的代码,呃,或者说或者说就先这样吧,内容无所谓了哈,然后呢,我在这里面,我让他休睡眠一会儿。咱们说哎,三秒吧,不要太久,好,我对它进行try catch,好大家注意看,我让服务器呢,睡睡睡眠了一会啊,现在重新部署,你看看这个请求,这个代码页面端的代码执行是不是跟我们所期待的一样哈,这个部署成功了啊,大家注意看。
04:18
理论上来说,咱们这个代码执行完,执行完这一行是不是接着就马上往下走了,对吧?但现在他会马上往下走吗?请看哦,我们说响应。就是收到服务器返回的数据,注意看啊,我现在这里再加一行啊,就它。来看一下哈,我们在刷新刷新啊,看看这缓存,还看这缓存还在不在啊,然后确保没有缓存,那这个代码已经加了,这个也加了是吧?好大家注意啊,我们以为这行代码执行完他就马上执行。
05:06
对吧,但是会吗?我刷新再点,诶发现了吗?他没有马上执行,你看见了吗?执行了什么,他先收到了服务器的数据之后才会执行这一行代码,那么我们管这个叫做同步,能理解了吗?就是。我阿贾克的请求没有完,你下面代码都不能走,叫做同步,就特别像什么东西啊,就比如说,呃,你跟你一个朋友一起出去玩,结果中间呢,他需要去解手是吧,那上面下洗手间,他说你等我,等我回来咱们一起走,那就是同步了,那什么叫做曳步呢?曳步就是你要上厕所对吧?好,你去上厕所了,你跟你同事,你跟你朋友说一下,然后呢,你朋友说那你上吧,我走慢一点,你一会上完之后你赶紧追上来哈,就这叫异步。啊,就这么简单,你看一下哈,那现在我把这个改成为触触之后,大家注意它就不会等服务器把复据返回来之后才会执行了,而是你这行一执行它就马上往下走,然后你这个地方呢,什么时候返回,什么时候执行。
06:17
这就是一来看看效果哈。呃,我们刷新一下。啊,一步了啊好,这时候看走他是不是马上执行我最后行代码了,他不像刚刚一样会等待在那里吧,他不会了哈,好走你看到吗?服务器什么时候收回,什么时候返回,看见吧,或者我再给你执行,是走马上执行走。哎,服务器什么时候返回,什么时候执行,这就是异啊,这个就是异步,那有同学说老师那这个这异步有啥用啊,我都没看出来有啥用啊是吧,别着急啊,我给你演示一下异步有啥用啊,效果非常好,对于用户体验而言,老师怎么个好法呢?请看啊呃,我先我先把这个改成同步哈,然后呢,我在这里多加几个按钮,我跟你说能让你。
07:09
有让你吐血啊,这样的用户体验让你吐血啊,吐血身亡是吧,你看这个效果,现在我在页面上多加了好多个按钮是吧?然后呢,我我去点这些按钮,因为每个按钮都是一个功能嘛,我我去刷新一下哈,我点点点点点发现了吗?我点完第一个之后,其他是不是不动了。点不了了吧,这就是同步,因为啥你服务器不返回,你点都没有效果,你看见吗。好,大家想想,你在哪个网站上是看到这样的效果的,你点了一个按钮,整个页面就卡死在那里,再也不动了。你说这样的用户体验是不是很糟,这这么简单呗,这就是同步,这就是同步啊,那异步呢,你看看啊,哎呀你看这这哎呀我写的这个异啊,诶哎呀很麻烦。你看这就是同步的效果,用户体验特别差,你看见了吗?干个事情都不行啊,好了就别动了啊。
08:10
现在大家注意看着哈,我现在把它改成true,它是异步了,那夜部还会出现这么恶心的用户体验吗?大家请看我点我点我点大家看是不是都没问题,看见了吗?哎,你其他的功能并不影响整个页面其他的交互。这就是异步带来的良好的用户体验。哎,这是为什么要有义务请求啊,这个呢,咱们知道一下哈,好。
我来说两句