位置: 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)(普利特维采湖群国家公园天气)

  • iphone13mini厚度(iphone13mini机身尺寸)

    iphone13mini厚度(iphone13mini机身尺寸)

  • b站三连是什么意思(b站上3连是什么意思)

    b站三连是什么意思(b站上3连是什么意思)

  • 如何查ip(如何查iphone是不是国行)

    如何查ip(如何查iphone是不是国行)

  • 1千米距离怎样拉光纤(一千米怎么计算)

    1千米距离怎样拉光纤(一千米怎么计算)

  • 你的设备中缺少重要更新(你的设备中缺少重要的安全和质量修复有什么影响)

    你的设备中缺少重要更新(你的设备中缺少重要的安全和质量修复有什么影响)

  • 钉钉开悬浮窗记不记录看课时间(钉钉开悬浮窗记录时长吗)

    钉钉开悬浮窗记不记录看课时间(钉钉开悬浮窗记录时长吗)

  • qq录音怎么发到微信上(qq里面录音怎么转发)

    qq录音怎么发到微信上(qq里面录音怎么转发)

  • 为什么抖音私信没回复就没了(为什么抖音私信发出去别人看不到)

    为什么抖音私信没回复就没了(为什么抖音私信发出去别人看不到)

  • 打印机删除后刷新又出来了(打印机删除后刷新又出来了,怎样删除)

    打印机删除后刷新又出来了(打印机删除后刷新又出来了,怎样删除)

  • 苹果id永久删除过还能注册吗(苹果id永久删除账号icloud还在吗)

    苹果id永久删除过还能注册吗(苹果id永久删除账号icloud还在吗)

  • 拍照和扫描有什么区别(拍照扫描有什么用)

    拍照和扫描有什么区别(拍照扫描有什么用)

  • 保存到网盘和下载有什么区别(保存到网盘和下载)

    保存到网盘和下载有什么区别(保存到网盘和下载)

  • ip协议的特征是一种(ip协议的特征是无连接什么和什么)

    ip协议的特征是一种(ip协议的特征是无连接什么和什么)

  • wps账号可以几个人用(wps一个账号可以登录几台设备)

    wps账号可以几个人用(wps一个账号可以登录几台设备)

  • 为什么幻灯片单击不能跳下一张(幻灯片设置了单击出现,为什么还连续出现)

    为什么幻灯片单击不能跳下一张(幻灯片设置了单击出现,为什么还连续出现)

  • oppoA11x是什么屏幕(oppoa11x是多大的屏)

    oppoA11x是什么屏幕(oppoa11x是多大的屏)

  • 京东可以延迟送货吗(京东延迟送达补偿)

    京东可以延迟送货吗(京东延迟送达补偿)

  • 荣耀9x是否支持语音唤醒(荣耀9x是否支持nfc功能)

    荣耀9x是否支持语音唤醒(荣耀9x是否支持nfc功能)

  • 网易旗下的考拉海购是否可靠(网易考拉概况)

    网易旗下的考拉海购是否可靠(网易考拉概况)

  • 为什么发快手别人看不见(为什么发快手别人在关注页看不到)

    为什么发快手别人看不见(为什么发快手别人在关注页看不到)

  • 怎么把抖音号遮掉(怎么把抖音号遮住视频)

    怎么把抖音号遮掉(怎么把抖音号遮住视频)

  • 如何修复Windows 11中损坏的注册表项? Win11修复损坏的注册表项方法(如何修复windows11无法的注册表值)

    如何修复Windows 11中损坏的注册表项? Win11修复损坏的注册表项方法(如何修复windows11无法的注册表值)

  • 贝纳斯克,西班牙韦斯卡 (© Miscelleneoustock/Alamy)(贝纳克波斯图干红葡萄酒)

    贝纳斯克,西班牙韦斯卡 (© Miscelleneoustock/Alamy)(贝纳克波斯图干红葡萄酒)

  • 计提维保费
  • 非营利组织营利了怎么办
  • 什么公司可以开普票
  • 缴注册印花税怎么做账
  • 新增资产额怎么计算
  • 其他应收款账龄怎么算
  • 销售自用旧机动车辆的税务处理
  • 小规模纳税人季报还是月报?
  • 出口增值税发票金额怎么开
  • 固定资产拆除后账务处理
  • 服装公司进布料一般进多少
  • 建设工程农民工工资支付条例
  • 上海个人住房房产税
  • 连年亏损的企业因为具有递延税金的优势
  • 零余额账户期末怎么结转?
  • 出口佣金会计分录
  • 同一控制下合并日后合并报表的编制
  • 收到住房补贴怎么做账
  • 旅游业企业所得税要求
  • 应交税费的明细账怎么手工登记
  • 哪些支出可以在计算企业应纳税所得额时加计扣除
  • 企业购车按揭产生的费用
  • 怎样设置登录帐号和密码
  • 事业单位财政拨款是编制吗
  • 电子承兑汇票怎么用
  • linux 部署
  • 党政机关接收企业赞助的规定
  • 企业网管出路
  • 电脑pin码忘了开不了机,且鼠标失灵
  • 不动产分期抵扣政策
  • 减半征收所得税的有哪些
  • 公司吸收合并股权
  • linux设置壁纸的命令
  • 企业职工福利费的扣除标准是多少?
  • php fileinfo
  • 监狱劳教企业是国企吗
  • 季度申报怎样在网上申报
  • 报销钱大写数字
  • 加计抵减和加计扣除是一样的吗
  • 一个简单安全的小故事
  • 微信小程序设计规范(官方)文档
  • 神经网络模型python
  • 长期股权投资会计准则
  • 外购商品用于赠送增值税可以抵扣么
  • 新会计准则对财务工作的影响
  • 固定资产出租收入属于
  • 出口退税在贷方,之后还交税吗
  • sql 封装
  • 信用减值损失是什么项目
  • 认缴意思
  • 印花税每个月都计提吗
  • 员工奖励账务处理流程
  • 劳务公司成本核算方法一般选择哪个
  • 个体户办营业执照网上怎么申请
  • 当月销售下月开票
  • 自己开发自己施工
  • 连锁零售药房
  • 超市的进场费怎么入会计科目
  • 银行手续费未取得发票可以进行税前扣除吗
  • 购买商品发生的费用计入
  • 企业偿债能力的含义
  • freebsd ports安装
  • ac1st19.dll
  • ubuntu20桌面
  • linux的收获
  • mac如何快速复制文件
  • win102020h2
  • linux7.2 sudo权限配置
  • win10怎么查看磁盘是固态还是机械
  • w10鼠标
  • win10预览版和正式版区别
  • js限制数组长度
  • Node.js中的什么模块是用于处理文件和目录的
  • 用javascript
  • jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
  • jquery基本操作
  • 税务局不动产交易缴税方案
  • 地税网上预约
  • 贵州税务举报
  • 汽车车船税怎么交
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设