位置: IT常识 - 正文

vue 方法按照顺序执行(vue方法顺序执行)

编辑:rootadmin
vue 方法按照顺序执行

推荐整理分享vue 方法按照顺序执行(vue方法顺序执行),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue调整数组顺序,vue的排序,vue sort排序,vue如何控制组件按顺序输出,vue按顺序执行方法,vue按顺序执行方法,vue的排序,vue如何控制组件按顺序输出,内容如对您有帮助,希望把文章链接给更多的朋友!

在调用后台方法的时候,由于调用了多个方法,但是执行的时候并没有按照顺序执行,前端需要后台返回的数据,对数据进行页面展示,由于没有按照顺序执行,导致前台页面报错。解决办法采用new Promise单独执行每个方法,并返回resolve。以下是实现方法:

方式一:

    // 获取标签和绘制曲线数据

    mainMethod() {

      // 执行方法1

      this.method1().then((val) => {

        // 方法2

        this.method2().then((val) => {

          // 方法3

          this.method3().then((val) => {

            //  等待方法1、2、3 执行完成后执行方法“lastMethod”

            this.lastMethod();

          });

        });

      });

    },

    // 方法1

   method1() {

      return new Promise((resolve, reject) => {

        // 调用后端接口getMethod1

        getMethod1("CT01").then((response) => {

          this.detail_method1 = response.data;

          resolve( this.detail_method);

        });

      });

    },

    //  方法2

    method2() {

      return new Promise((resolve, reject) => {

vue 方法按照顺序执行(vue方法顺序执行)

        // 调用后端接口getMethod2

        getMethod2("CT02").then((response) => {

          this.detail_method2= response.data;

          resolve(this.detail_method2);

        });

      });

    },

    // 方法3

    method3() {

      return new Promise((resolve, reject) => {

       // 调用后端接口getMethod3

        getMethod3( "CT03").then((response) => {

          this.detail_method3 = response.data;

          resolve(this.detail_method3);

        });

      });

    },

 lastMethod() {

// 需要执行的方法内容

}

方式二:vue一个页面很多接口时,异步请求的优化 1.使用 Promise.all()

Promise.all() 方法接收一个promise的iterable类型(注:Array,Map,Set都属于ES6的iterable类型)的输入,并且只返回一个Promise实例, 那个输入的所有promise的resolve回调的结果是一个数组。这个Promise的resolve回调执行是在所有输入的promise的resolve回调都结束,或者输入的iterable里没有promise了的时候。它的reject回调执行是,只要任何一个输入的promise的reject回调执行或者输入不合法的promise就会立即抛出错误,并且reject的是第一个抛出的错误信息

     let p1 = new Promise((resolve, reject) => {           getNumber()           resolve('成功了p1')         })

        let p2 = new Promise((resolve, reject) => {           getName()           resolve('成功了p2')         })     let p3 = new Promise((resolve, reject) => {       setTimeout(resolve, 100, 'foo');     });

        Promise.all([p1, p2, p3]).then((result) => {           console.log(result) // ['成功了p1', '成功了p2', 'foo']         }).catch((error) => {         })

Promise.all 在任意一个传入的 promise 失败时返回失败。例如,如果你传入的 promise中,有四个 promise 在一定的时间之后调用成功函数,有一个立即调用失败函数,那么 Promise.all 将立即变为失败。

var p1 = new Promise((resolve, reject) => {   setTimeout(resolve, 1000, 'one'); }); var p2 = new Promise((resolve, reject) => {   setTimeout(resolve, 2000, 'two'); }); var p3 = new Promise((resolve, reject) => {   reject('reject'); });

Promise.all([p1, p2, p3]).then(values => {   console.log(values); }).catch(reason => {   console.log(reason) });

2.Promise.race(iterable) 方法返回一个 promise,一旦迭代器中的某个promise解决或拒绝,返回的 promise就会解决或拒绝。

var p1 = new Promise(function(resolve, reject) {             setTimeout(resolve, 500, "one");         });         var p2 = new Promise(function(resolve, reject) {             setTimeout(resolve, 100, "two");         });

        Promise.race([p1, p2]).then(function(value) {           console.log(value); // "two"           // 两个都完成,但 p2 更快         });

3.Promise.all()与Promise.race()请求时的区别

Promise.all() 适合于后面的异步请求接口依赖前面的接口请求的数据时使用。 Promise.race() 没有先后顺序,那个先请求回来那个先显示

参考链接:

https://www.csdn.net/tags/MtTaEgzsNjAwMzY5LWJsb2cO0O0O.htmlhttps://www.csdn.net/tags/MtTaEgzsNjAwMzY5LWJsb2cO0O0O.html

本文链接地址:https://www.jiuchutong.com/zhishi/288919.html 转载请保留说明!

上一篇:最薄的MP3是什么(mp3格式最高音质)

下一篇:普利特维采湖群国家公园中的高架步道,克罗地亚 (© Alessandro Laporta/Offset by Shutterstock)(普利特维采湖群国家公园天气)

  • 电子邮件怎么注册(电子邮件怎么注册电脑)

    电子邮件怎么注册(电子邮件怎么注册电脑)

  • 华为p40信号不好怎么解决(华为p40信号不稳定)

    华为p40信号不好怎么解决(华为p40信号不稳定)

  • 华为p40能用钢化膜吗(华为p40能用钢化玻璃膜吗)

    华为p40能用钢化膜吗(华为p40能用钢化玻璃膜吗)

  • qq信息不要显示在屏幕怎么办

    qq信息不要显示在屏幕怎么办

  • 信号基站辐射范围是多少米(信号基站的辐射量有多大)

    信号基站辐射范围是多少米(信号基站的辐射量有多大)

  • wps黑体是哪个(wps文档中黑体字怎么设置)

    wps黑体是哪个(wps文档中黑体字怎么设置)

  • 怎么设置微信悬浮在其它应用上面(怎么设置微信悬浮窗口)

    怎么设置微信悬浮在其它应用上面(怎么设置微信悬浮窗口)

  • 华为紧急呼叫怎么关闭(华为紧急呼叫怎么设置联系人电话)

    华为紧急呼叫怎么关闭(华为紧急呼叫怎么设置联系人电话)

  • 老快手号之前有违规还能再上热门吗?(以前用快手号账号不存在怎么办)

    老快手号之前有违规还能再上热门吗?(以前用快手号账号不存在怎么办)

  • 怎么判断tl431稳压管好坏(怎么判断是不是稳压二极管)

    怎么判断tl431稳压管好坏(怎么判断是不是稳压二极管)

  • qq安全中心密码管理在哪(QQ安全中心密码找回)

    qq安全中心密码管理在哪(QQ安全中心密码找回)

  • iphone11什么时候上市的(iPhone11什么时候生产的)

    iphone11什么时候上市的(iPhone11什么时候生产的)

  • 如何清除siri建议记录(如何删除siriapp建议)

    如何清除siri建议记录(如何删除siriapp建议)

  • iphone11pro怎么一键换机(苹果11pro如何?)

    iphone11pro怎么一键换机(苹果11pro如何?)

  • qq铭牌在哪里看(qq铭牌在哪里看有多少个)

    qq铭牌在哪里看(qq铭牌在哪里看有多少个)

  • 拼多多可以扫码取件吗(拼多多可以扫码领快递吗)

    拼多多可以扫码取件吗(拼多多可以扫码领快递吗)

  • 支付宝怎么设置刷脸支付(支付宝怎么设置余额宝不自动转入)

    支付宝怎么设置刷脸支付(支付宝怎么设置余额宝不自动转入)

  • qq闺蜜关系有什么用(qq闺蜜关系什么时候变灰色的)

    qq闺蜜关系有什么用(qq闺蜜关系什么时候变灰色的)

  • 微信收款的声音在哪里设置(微信收款的声音在哪里打开)

    微信收款的声音在哪里设置(微信收款的声音在哪里打开)

  • 韩剧tv再也不能用了吗(韩剧tv不能用了)

    韩剧tv再也不能用了吗(韩剧tv不能用了)

  • 怎么用快手发布动态(怎么快手发布作品视频)

    怎么用快手发布动态(怎么快手发布作品视频)

  • 小米8机身尺寸是多少(小米8机身多少厘米)

    小米8机身尺寸是多少(小米8机身多少厘米)

  • 美团怎么设置地址(美团怎么设置地图位置)

    美团怎么设置地址(美团怎么设置地图位置)

  • 怎么找到qq点赞号码(qq怎么找点赞过的说说)

    怎么找到qq点赞号码(qq怎么找点赞过的说说)

  • opporeno和opporenoz有什么区别(opp reno z)

    opporeno和opporenoz有什么区别(opp reno z)

  • wps表格如何锁定指定的单元格(wps表格如何锁定行和列)

    wps表格如何锁定指定的单元格(wps表格如何锁定行和列)

  • qq怎么看是不是被删了(qq怎么看是不是单向好友)

    qq怎么看是不是被删了(qq怎么看是不是单向好友)

  • 华为p30分屏方法(华为p30分屏怎么操作)

    华为p30分屏方法(华为p30分屏怎么操作)

  • 冷门暴利生意——清洁公司(冷门暴利行业)

    冷门暴利生意——清洁公司(冷门暴利行业)

  • 小规模免收增值税 其他收益怎么算
  • 增值税纳税义务发生地点的规定
  • 个税返还什么时候到账
  • 未分配利润为负数可以提取盈余公积吗
  • 超过库存现金限额的现金要及时存入银行
  • 往来票据如何开具
  • 为什么盈利要利润亏损要扣除所得税
  • 从一个公司到另一个公司公积金
  • 委托加工物资属于在产品吗
  • 公司存款利率
  • 应付账款坏账准备的会计分录
  • 公司制度奖励怎么写
  • 工程设计企业符合增值税抵减政策吗
  • 购买可供出售金融资产的交易费用
  • 子公司注销欠母公司借款怎么办
  • 增值税销项发票冲红怎么冲
  • 预付办公室装修款
  • 减税的案例
  • 工资薪金税前扣除比例
  • 转让商业承兑汇票显示银行拒绝交易
  • 环境保护税的计算例题
  • 进项税额转出的
  • 投资性房地产企业有哪些
  • 建设项目投资中的预备费包括
  • 把试驾车当新车卖,构成欺诈
  • 默认网关不可用频繁掉线
  • 工会经费如何计提会计分录
  • PHP:oci_new_collection()的用法_Oracle函数
  • 给客户赠送的礼物叫什么
  • 委托代销委托方的账务处理
  • 固定资产更新改造支出资本化
  • windows商店下载不了
  • php保留两位小数的函数
  • 开发间接费用会计分录
  • 气泡星云图片
  • css如何设置渐变色
  • laravel技巧
  • yolo xml转txt
  • 冲减应付账款如何做账
  • 跨地区经营增值税预缴
  • 哪些支出可以计入成本科目
  • php access
  • 税收优惠会计分录 附加税
  • 增值税抵扣要求一一对应
  • 个税可以补申报几个月的码
  • 应收账款抵借的例题
  • 什么是符合资本化
  • 出租车票做什么科目
  • 差旅费津贴属于应付职工薪酬吗
  • 固定资产入账和未入账的区别
  • 工会经费的开支包括哪些
  • 建筑公司跨区域经营预缴
  • 产品成本归集和分配是哪一章的
  • 当期应纳增值税税额的计算流程
  • 计算税前利润时 是否考虑资金成本
  • 出口退税对应的进项不能抵扣对吗
  • 制造费用是借还是贷
  • 暂估的费用次年调增怎么做会计分录
  • sqlserverssms
  • Centos下Mysql安装图文教程
  • mysql怎么修改my.ini
  • win8怎么格式化硬盘
  • centos建站教程
  • windows重置网卡cmd
  • windos8怎么样
  • centos7命令行快捷键
  • win7系统笔记本无线网络找不到
  • js中||的用法
  • nodejs快速入门
  • time(0)函数
  • unity android build support
  • 批处理系统定义
  • 百度地图api报错502
  • android:Background线程池和UiThread线程池
  • jquery mouse
  • python中else语句
  • js判断输入框字符长度
  • 票折与票扣的区别在哪里
  • 北京国家税务局网上办税服务厅
  • 深圳国税系统
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设