小程序:异步通信(回调函数、promise与await)

来自CloudWiki
跳转至: 导航搜索

实训步骤

方法1 回调函数

post-detail2.js:

/**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      console.log("onload")
      wx.setStorageSync('flag', true)
   
      const flag = wx.getStorage({
          key:'flag',   
          success(value){
            console.log(value.data)
          }           
      })
      console.log(flag)

  },


方法2 运用Promise

运用Promise,通过flag.then异步传值


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      console.log("onload")
      wx.setStorageSync('flag', true)
   
      const flag = wx.getStorage({
          key:'flag',   
          // success(value){
          //   console.log(value.data)
          // }           
      })
     flag.then((value)=>{
         console.log(value)
    })
      console.log(flag)

  },

方法3 async 、await传值

/**
   * 生命周期函数--监听页面加载
   */
 async  onLoad(options) {
      console.log("onload")
      wx.setStorageSync('flag', true)
   
      const flag = await wx.getStorage({
          key:'flag',   
          // success(value){
          //   console.log(value.data)
          // }           
      })
    //  flag.then((value)=>{
    //      console.log(value)
    // })
      console.log(flag)

  },

输出:

{errMsg: "getStorage:ok", data: true}
data: true
errMsg: "getStorage:ok"
__proto__: Object