zoukankan      html  css  js  c++  java
  • Promise链式调用 终止或取消

    Promise回调分两种方法,then成功,catch失败

    let promise = new Promise(function(resolve, reject){
        resolve('第一次成功')
    })
    
    promise.then(function(val) {
        // 两种方法意思都代表报错,【中断下一步,直接报错
      //第一种方法
        throw new error()
      // 第二种方法
      return Promise.reject()
    }).then(function(val) { console.log(
    '被跳过的方法') }).catch(function(val) { console.log('返回失败') })

    第三种方法有点粗暴,但也是目前看来可解决的可行办法

    let promise = new Promise(function(resolve, reject){
        resolve('第一次成功')
    })
    
    promise.then(function(val) {
      //第三种方法
        return new Promise(()=>{})
    }).catch(function(val) {
        console.log('返回失败')
    }).then(function(val) {
        console.log('被跳过的方法')
    })

    前两种如果链式调用最后以失败结尾的话是可行的,如果以成功结尾就会出问题,第三种方法是直接阻断性,讲进程转到新的Promise

    目前只想到三种方法,但本人认为这不是最好的解决办法,后续如果后小伙伴发现更好的办法可以评论哦

  • 相关阅读:
    java基础(一)
    java概述
    七大查找十大排序之二排序
    bat批处理脚本语言(一)
    photoshop安装与破解
    office——excel常用函数
    arcgis engine开发环境搭建
    七大查找十大排序算法(一)
    华为路由交换常用命令
    cisco路由交换常用命令
  • 原文地址:https://www.cnblogs.com/gqx-html/p/10967412.html
Copyright © 2011-2022 走看看