ajax

ajax 是什么?有什么作用?

  • AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
  • ajax是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换。ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

作用:实现网页的异步加载,局部刷新网页。当在向服务器获取新数据时不需要刷新整个网页,提高用户体验

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

  • 前后端开发联调注意事项:
  1. URL:接口名称
  2. 发送请求的参数和格式(get/post)
  3. 数据响应的数据格式(数组/对象)
  4. 根据前后端约定,整理接口文档
  • 后端接口完成前如何 mock 数据:
  1. 安装 node.js并安装 server-mock(npm install -g server-mock)
  2. 选定一个文件夹当作是服务器,在当前文件夹下,创建 router.js 文件,写好对应接口的响应函数,创造一些假数据在当前文件夹下。
  3. 执行mock strat可将当前文件夹路径作为根目录启动web服务器

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

//伪代码
var isLoading = true; //添加一个状态锁 初始为true
var btn = document.qureySelector('#btn');
btn.addEventListener('click',function(){
  if(!isLoading) {
    return; //判断点击后是不是正在加载数据,若在加载数据点击没反应
  }
  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function(){
    if(xhr.readystate ===4){
      if(xhr.status === 200 || xhr.status === 304){
      }else{
        console.log("error")
      }
      isLoading = ture; // 如果 readyState = 4,说明响应数据已经到来,状态锁又变成 true,可以再次点击。
    }
    xhr.open('open','/getFriends?username=' + input.value,true);
    xhr.send()
    isLoading = false; //发送完数据后状态改为false
})

实现加载更多的功能

github

ajax_第1张图片
ajax.png

你可能感兴趣的:(ajax)