当前位置: 首页 > news >正文

做企业网站需要准备什么材料平台设计标准

做企业网站需要准备什么材料,平台设计标准,合肥公司网站设计,永康企业网站建设公司文章目录 axios基本概念axios多种方式调用工具函数axios的拦截器如何实现#xff1f;用的设计模式是哪种#xff1f;axios如何实现取消请求#xff0c;和cancelToken如何使用 axios基本概念 axios是目前比较流行的一个js库#xff0c;是一个基于promise的网络数据请求库用的设计模式是哪种axios如何实现取消请求和cancelToken如何使用 axios基本概念 axios是目前比较流行的一个js库是一个基于promise的网络数据请求库主要用于发送网络数据请求从后台服务器上获取数据返回给前端。 优点特性 从浏览器中创建 XMLHttpRequests从 node.js 创建 http 请求支持 Promise API拦截请求和响应转换请求数据和响应数据取消请求自动转换 JSON 数据客户端支持防御 XSRF axios多种方式调用 axios的常用几种方式就是 axios.get(url,config); url表示请求地址config表示配置对象axios.post(url,config)axios(config) 从上面可以看出axios既可以当函数axios()使用又可以当对象axios.get()使用原理 实质上axios是一个函数但函数也属于是一个对象所以同样可以向它身上追加属性和方法我们所使用的axios是通过createInstance这个函数创造出来的它简单实现的源码如下。 函数中实例化了AxiosAxios真正调用的是Axios原型链上的request方法因此导出的axios需要关联到request方法这里巧妙的通过bind函数进行关联生成关联后的instance函数同时指定它的调用上下文就是Axios的实例对象因此instance调用时也能获取到实例对象上的defaults和interceptors属性但是仅仅关联request还不够再通过extend函数将Axios原型对象上的所有get、post等函数扩展到instance函数上因此这也是我们才能够使用多种方式调用的原因所在。 function createInstance(defaultConfig) {// 1.实例化Axiosvar context new Axios(defaultConfig);// 2.注意这里bind是一个自定义函数返回一个函数{Axios.prototype.request.apply(context,args)}// 这里request基本是Axios的核心方法相当于将这些方法全部绑到了实例化的对象上var instance bind(Axios.prototype.request, context);// Copy axios.prototype to instance// 3.将Axios原型链上的其他方法也都绑定到instance上去这些方法的this会指向contxtutils.extend(instance, Axios.prototype, context);// Copy context to instance// 4.将contxt上的属性复制到instance上去utils.extend(instance, context);return instance; }axios的构造函数AxiosAxios函数在原型对象上还挂载了request、get、post等函数但是get、post等函数最终都是通过request函数来发起请求的。而且request函数最终返回了一个Promise对象 因此我们才能通过then函数接收到请求结果。 class Axios {constructor(instanceConfig) {this.defaults instanceConfig;this.interceptors {request: new InterceptorManager(),response: new InterceptorManager()};}request() {}}一个是将默认配置保存到defaults另一个则是构造了interceptors拦截器对象 核心request函数主要作用 兼容多种传参方式(1. request(‘example/url’, { method: ‘post’ }); request({ url: ‘example/url’, method: ‘post’ }))合并参数通过promise的链式调用处理请求、响应拦截器以及发送请求等操作。 工具函数 bind将Axios原型上的方法挂载到instance上extend将构造函数 Axios.prototype 上的方法挂载到新的实例 instance 上然后将原型各个方法中的 this 指向 context axios的拦截器如何实现用的设计模式是哪种 拦截器实现就只有一个属性用于保存拦截器及三个原型方法添加、移除、执行。 实例化axios后就可以调用use进行绑定拦截器需要注意的是在传递use方法的第一个参数时必须返回config保证下一个promise能获取到处理后的参数。 options是可选参数对象可传入两个属性(synchronous, runWhen)这么设计就是使用了责任链设计模式。 axios采用promise.resolve的方式将拦截器异步化。将所有请求拦截器放在请求方法之前unshift所有的响应拦截器放在后push。遍历所有的方法通过promise的then方法将所有方法放在一条链上。 责任链模式是一种行为设计模式 允许你将请求沿着处理者链进行发送。 收到请求后 每个处理者均可对请求进行处理 或将其传递给链上的下个处理者。 优点 你可以控制请求处理的顺序。单一职责原则。 你可对发起操作和执行操作的类进行解耦。开闭原则。 你可以在不更改现有代码的情况下在程序中新增处理者。 责任链模式执行的顺序是请求拦截器 - 发起请求 - 响应拦截器这其实就是一个链条上串起了三个职责。 axios如何实现取消请求和cancelToken如何使用 创建一个 CancelToken 的实例,它有一个 executor 函数,可以通过调用 executor 参数中的 cancel 函数来取消请求。在 axios 请求配置中指定 cancelToken 属性,将 CancelToken 实例传递进去。当我们需要取消请求时,调用 CancelToken 实例的 cancel() 方法即可取消对应的请求。axios 检测到配置的 cancelToken 被取消,就会取消掉这个请求,并在错误回调中返回一个 Cancel 错误。axios 内部会监听 cancelToken 实例的 cancel 信号,一旦触发就会跳出队列,取消对应请求的执行。 使用方法 import axios from axios; const CancelToken axios.CancelToken; let cancel; axios.get(/user/12345, {cancelToken: new CancelToken(function executor(c) {// executor 函数接收一个 cancel 函数作为参数cancel c;}) }); // 取消请求 cancel(Operation canceled by the user.);
文章转载自:
http://www.morning.tmjhy.cn.gov.cn.tmjhy.cn
http://www.morning.rbjth.cn.gov.cn.rbjth.cn
http://www.morning.zqnmp.cn.gov.cn.zqnmp.cn
http://www.morning.pnmtk.cn.gov.cn.pnmtk.cn
http://www.morning.dkfb.cn.gov.cn.dkfb.cn
http://www.morning.zympx.cn.gov.cn.zympx.cn
http://www.morning.litao4.cn.gov.cn.litao4.cn
http://www.morning.zpjhh.cn.gov.cn.zpjhh.cn
http://www.morning.gwqkk.cn.gov.cn.gwqkk.cn
http://www.morning.chkfp.cn.gov.cn.chkfp.cn
http://www.morning.djpzg.cn.gov.cn.djpzg.cn
http://www.morning.xkqjw.cn.gov.cn.xkqjw.cn
http://www.morning.hfxks.cn.gov.cn.hfxks.cn
http://www.morning.xfcjs.cn.gov.cn.xfcjs.cn
http://www.morning.yesidu.com.gov.cn.yesidu.com
http://www.morning.dkzwx.cn.gov.cn.dkzwx.cn
http://www.morning.seoqun.com.gov.cn.seoqun.com
http://www.morning.gqfks.cn.gov.cn.gqfks.cn
http://www.morning.psxwc.cn.gov.cn.psxwc.cn
http://www.morning.dmlgq.cn.gov.cn.dmlgq.cn
http://www.morning.hjbrd.cn.gov.cn.hjbrd.cn
http://www.morning.bttph.cn.gov.cn.bttph.cn
http://www.morning.yrngx.cn.gov.cn.yrngx.cn
http://www.morning.tyrlk.cn.gov.cn.tyrlk.cn
http://www.morning.prprj.cn.gov.cn.prprj.cn
http://www.morning.cjqqj.cn.gov.cn.cjqqj.cn
http://www.morning.xzjsb.cn.gov.cn.xzjsb.cn
http://www.morning.qgghr.cn.gov.cn.qgghr.cn
http://www.morning.dnjwm.cn.gov.cn.dnjwm.cn
http://www.morning.gtbjf.cn.gov.cn.gtbjf.cn
http://www.morning.rxgnn.cn.gov.cn.rxgnn.cn
http://www.morning.bsghk.cn.gov.cn.bsghk.cn
http://www.morning.tnhmp.cn.gov.cn.tnhmp.cn
http://www.morning.ymwny.cn.gov.cn.ymwny.cn
http://www.morning.ctlzf.cn.gov.cn.ctlzf.cn
http://www.morning.gwqcr.cn.gov.cn.gwqcr.cn
http://www.morning.kqhlm.cn.gov.cn.kqhlm.cn
http://www.morning.rsqpc.cn.gov.cn.rsqpc.cn
http://www.morning.zqbrw.cn.gov.cn.zqbrw.cn
http://www.morning.hwxxh.cn.gov.cn.hwxxh.cn
http://www.morning.htbbp.cn.gov.cn.htbbp.cn
http://www.morning.mcpdn.cn.gov.cn.mcpdn.cn
http://www.morning.bfgpn.cn.gov.cn.bfgpn.cn
http://www.morning.stwxr.cn.gov.cn.stwxr.cn
http://www.morning.pxbky.cn.gov.cn.pxbky.cn
http://www.morning.lwnwl.cn.gov.cn.lwnwl.cn
http://www.morning.kgfsz.cn.gov.cn.kgfsz.cn
http://www.morning.qzfjl.cn.gov.cn.qzfjl.cn
http://www.morning.fygbq.cn.gov.cn.fygbq.cn
http://www.morning.nfbkz.cn.gov.cn.nfbkz.cn
http://www.morning.txzmy.cn.gov.cn.txzmy.cn
http://www.morning.pkrb.cn.gov.cn.pkrb.cn
http://www.morning.zxfr.cn.gov.cn.zxfr.cn
http://www.morning.yrdt.cn.gov.cn.yrdt.cn
http://www.morning.c7622.cn.gov.cn.c7622.cn
http://www.morning.pfgln.cn.gov.cn.pfgln.cn
http://www.morning.thwhn.cn.gov.cn.thwhn.cn
http://www.morning.tlbhq.cn.gov.cn.tlbhq.cn
http://www.morning.kycwt.cn.gov.cn.kycwt.cn
http://www.morning.gbljq.cn.gov.cn.gbljq.cn
http://www.morning.kqqk.cn.gov.cn.kqqk.cn
http://www.morning.qmzwl.cn.gov.cn.qmzwl.cn
http://www.morning.addai.cn.gov.cn.addai.cn
http://www.morning.lmqw.cn.gov.cn.lmqw.cn
http://www.morning.djpzg.cn.gov.cn.djpzg.cn
http://www.morning.yckrm.cn.gov.cn.yckrm.cn
http://www.morning.bpmdh.cn.gov.cn.bpmdh.cn
http://www.morning.cndxl.cn.gov.cn.cndxl.cn
http://www.morning.mypxm.com.gov.cn.mypxm.com
http://www.morning.xqspn.cn.gov.cn.xqspn.cn
http://www.morning.msgcj.cn.gov.cn.msgcj.cn
http://www.morning.rjkfj.cn.gov.cn.rjkfj.cn
http://www.morning.kmbgl.cn.gov.cn.kmbgl.cn
http://www.morning.grynb.cn.gov.cn.grynb.cn
http://www.morning.wmpw.cn.gov.cn.wmpw.cn
http://www.morning.psxcr.cn.gov.cn.psxcr.cn
http://www.morning.hwprz.cn.gov.cn.hwprz.cn
http://www.morning.kxmyj.cn.gov.cn.kxmyj.cn
http://www.morning.jyzqn.cn.gov.cn.jyzqn.cn
http://www.morning.eshixi.com.gov.cn.eshixi.com
http://www.tj-hxxt.cn/news/251980.html

相关文章:

  • 苏州吴中区专业做网站什么网站可以做十万的分期
  • 个人网站设计及实现论文景区网站建设策划案
  • 大冶建设局网站上海医疗旅游开发网站建设
  • 网站和管理系统哪个更难做国家和住房城乡建设部网站
  • 天津网站经营性备案网站升级建设中
  • 佛山网站建设网络公司网站策划书预期风险
  • 苏州网站建设运营推广网站模板在线预览
  • 医疗类网站备案网站代运营价格
  • 上海网站建设定免费制作链接的软件
  • 福海网站制作广州建设集团有限公司
  • 网站做微信支付功能域名ip
  • 做网站编辑好还是新媒体编辑wordpress如何防止ddos
  • 网站建设协调会个人做淘宝客网站要备案吗
  • 个人网站一键生成做视频网站都需要什么软件下载
  • 做网站项目所需资源化工企业网站模板
  • 兰州新区建设厅网站网页版传奇怎么开
  • 网站出现的问题吗天眼查询企业信息官网在线
  • 有哪些网站建设公司上线wordpress md主题
  • mip网站建设公司网站如何做搜索引擎
  • 手机单页网站教程局域网如何做视频网站
  • 网站群建设 会议 主持济南网站建设公司排名
  • 贵阳网站建设zu97我要建立自己的网站
  • 防水网站建设线上营销有哪些
  • 阿德莱德做网站薛华成 旅游网站建设
  • 有没有做软件的网站做网站建网站公司
  • 网站开发站点的文件夹做网站后端需要掌握什么技术
  • 紫色网站又拍 wordpress
  • 杭州网站建设费用三灶网站建设
  • 盘锦网站建设策划网上开店创业计划书
  • 海外推广的网站有哪些wordpress 模板添加