自己手写一个Promise

methods: {
    getData (username, password) {
      const login = new Promise((resolve, reject) => {
        if (username === 'zhou' && password === '123') {
          resolve({ code: 0, msg:'验证成功' })
        } else {
          reject({ code: 1, msg:'验证失败' })
        }
      })
      return login
    },
  },
  mounted () {
    this.getData('zhou', '123').then((res) => {
      console.log(res)
    }).catch((err) => {
      console.log(err)
    })
  }

该写法和调用方式以vue框架为例~

首先定义login是一个Promise,然后写业务逻辑,在什么情况下返回resolve(成功),在什么情况下返回(失败)reject。

reject()和resolve() 括号里面的内容   是.then(res) 和  .catch(err) 的res和err

上面例子:输出

{ code: 0, msg:'验证成功' }

猜你喜欢

转载自blog.csdn.net/Luckyzhoufangbing/article/details/89707709
今日推荐