es6读书笔记(五)Promise

简介: es6读书笔记(五)Promise

小程序云开发中会有大量的异步调用的语法,没学习es6之前,看到后处于完全懵逼的状态,一个是语法不清楚,另外一个也不知道是干啥的。Promise教程

写的多了,其实也就明白,其实就是异步调用,和传统的js的ajax差不多,要我通俗的理解就是换了一个写法

vue中异步调用的例子

createData() {
      this.$refs['dataForm'].validate((valid) => {
        if (valid) {
          this.temp.id = parseInt(Math.random() * 100) + 1024 // mock a id
          this.temp.author = 'vue-element-admin'
          this.temp.status = '待支付'
          this.temp.no = parseTime(new Date(), '{y}{m}{d}') + (++this.total).toString().padStart(5, '0')
          this.$cloudbase.database().collection('order').add({
            no: this.temp.no,
            name: this.temp.name,
            telphone: this.temp.telphone,
            address: this.temp.address,
            items: this.products,
            totalprice: this.temp.totalprice,
            discountprice: this.temp.discountprice,
            status: this.temp.status,
            createdate: new Date()
          }).then((res) => {
            this.temp._id = res.id
            this.list.unshift(this.temp)
            this.dialogFormVisible = false
            this.$notify({
              title: '提示信息',
              message: '新增成功',
              type: 'success',
              duration: 2000
            })
            this.fetchData()
          }).catch((e) => {})
        }
      })
    }

小程序中异步调用的例子

onLoad: function (options) {
    console.log(options.name+" "+options.type)
    console.log(teacherCollection)
    teacherCollection.where({
      course:options.name,
    }).get().then(res => {
        console.log(res.data)
      this.setData({
        teacherlist: res.data,
        type:options.type
      })
      })
  }

云函数或者官方的API基本都是异步调用的,调用成功我们一般都需要更新状态以给用户进行提示,所以在方法调用完毕后一般跟一个.then()这个就是回调,当然回调里你还得使用箭头函数以便获得到页面的状态变量来更新页面的状态。

相关文章
|
10天前
|
前端开发
理解 ES6 中的 Promise
【10月更文挑战第24天】ES6 中的 Promise 是一种用于处理异步操作的机制,它提供了一种更优雅、更可控的方式来处理异步任务的结果。Promise 可以看作是对异步操作结果的一种承诺,它可以处于三种不同的状态:Pending(等待中)、Fulfilled(已完成,即成功)和 Rejected(已拒绝,即失败)。
|
30天前
|
前端开发 JavaScript 小程序
JavaScript的ES6中Promise的使用以及个人理解
JavaScript的ES6中Promise的使用以及个人理解
16 1
|
30天前
|
前端开发 Java
说说你对es6中promise的理解?
说说你对es6中promise的理解?
13 1
|
1月前
|
前端开发 Java
说说你对es6中promise的理解?
说说你对es6中promise的理解?
|
2月前
|
前端开发 JavaScript
ES6新标准下JS异步编程Promise解读
ES6新标准下JS异步编程Promise解读
36 3
|
30天前
|
存储 前端开发 JavaScript
关于 ES6 中 Promise 的面试题
关于 ES6 中 Promise 的面试题
16 0
|
3月前
|
前端开发
手写实现ES6的Promise.all()和Promise.race()函数
这篇文章介绍了如何手写实现ES6的`Promise.all()`和`Promise.race()`函数,提供了实现这两个Promise聚合函数的详细代码示例,并展示了如何使用它们。
手写实现ES6的Promise.all()和Promise.race()函数
|
4月前
|
前端开发 JavaScript
ES6 中 Promise对象使用学习
ES6 中 Promise对象使用学习
40 1
|
3月前
|
前端开发 JavaScript
ES6新特性(五):Promise优雅地处理异步
ES6新特性(五):Promise优雅地处理异步
|
5月前
|
JSON 前端开发 JavaScript
ES6引入Promise和async/await解决异步问题
【6月更文挑战第12天】ES6引入Promise和async/await解决异步问题。Promise处理异步操作,有pending、fulfilled、rejected三种状态,支持链式调用和并行处理。async/await是基于Promise的语法糖,使异步代码更同步化,提高可读性。两者都是处理回调地狱的有效工具,开发者应根据需求选择合适的方式。
54 3