ajax 是什么?有什么作用?
- (异步JavaScript和XML)Asynchronous JavaScript + XML, 其本身不是一种新技术,而是一种使用现有技术集合的‘新’方法, 包括: HTML or XHTML, Cascading Style Sheets, JavaScript, The Document Object Model, XML, XSLT, 以及最重要的 XMLHttpRequest object.当使用结合了这些技术的AJAX模型以后, 网页程序能够逐步快速地将更新呈现在用户界面上,不需要重载(刷新)整个页面。这使得程序能够更快地回应用户的操作。
- 尽管X在Ajax中代表XML, 但由于自身的许多优势,比如更加轻量以及作为Javascript的一部分,目前JSON的使用比XML更加普遍。JSON和XML都被用于在Ajax模型中打包信息。
前后端开发联调需要注意哪些事情?后端接口完成前如何 mock 数据?
- 注意事项:
- 约定好通信方式(get、post)、路由
- 约定好前端传给后端的参数,以及后端返回的数据格式
- 可以使用node或其它后端语言搭建模拟服务器,根据约定的数据格式生成虚拟数据
点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击?
-
设置一个状态变量,当一个Ajax通信完成前拒绝发起下一个。如:
<a id="btn" class="btn" href="#">加载更多</a> var isDataArrive = true btn.onclick = function (e) { e.preventDefault() if (!isDataArrive) { return } isDataArrive = false ajax({ var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function(){ if(xhr.readyState === 4){ isDataArrive = true } } }); }
当Ajax通信完成前将按钮或超链接设置为不可点击状态。