ajax实践

2017-10-14  本文已影响0人  Lucien_d70a

题目1: ajax 是什么?有什么作用?

题目2:前后端开发联调需要注意哪些事情?后端接口完成前如何 mock 数据?

前后端开发联调需要注意的事项:

后端接口完成前如何 mock 数据:

题目3: 点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击?

var isDataArrive=true;//状态锁  默认现在是有响应数据

if(!isDataArrive){   //在用户点击时,或者做出其他状态时候,判断是不是响应了,没响应,退出
     return;
 }

isDataArrive = true   //当前表示是响应数据状态

isDataArrive = false //发出请求以后,相应了数据以后恢复到默认状态

//例子:
isDataArrive = false  //做完数据处理,响应数据后,恢复到没有响应数据状态
var isDataArrive=true;//状态锁  默认现在是有响应数据
var btn=document.querySelector('#btn')
var pageIndex=3;

 btn.addEventListener('click', function(e){
  e.preventDefault()
if(!isDataArrive){   //判断是不是响应了,没响应,退出
  return;
 }
 var xhr = new XMLHttpRequest()
 xhr.onreadystatechange = function(){
    if(xhr.readyState === 4){
       if( xhr.status === 200 || xhr.status == 304){
          var results = JSON.parse(xhr.responseText)
         console.log(results)
         var fragment = document.createDocumentFragment()
         for(var i = 0; i < results.length; i++){
             var node = document.createElement('li')
             node.innerText = results[i]
             fragment.appendChild(node)
         }
         content.appendChild(fragment)
         pageIndex = pageIndex + 5
     }else{
         console.log('出错了')
     }
     isDataArrive = true   //当前表示是响应数据状态
   }
}
  xhr.open('get', '/loadMore?index='+pageIndex+'&length=5', true)
  xhr.send()
  isDataArrive = false  //做完数据处理,响应数据后,恢复到没有响应数据状态
  })

题目4:实现加载更多的功能,[效果范例455]后端在本地使用server-mock来模拟数据

(。。。。。。。。。。。。。。。。 我做是做好了,为什么有的同学可以上传到github上并且能用到加载功能,我就弄不懂了。。。 很多同学都是发出了代码)
题目四 代码链接

上一篇 下一篇

猜你喜欢

热点阅读