微信小程序promise async出現regeneratorRuntime is not defined錯誤

一、問題

 

 

 

二、解決

  1 詳情,ES6 轉ES5 勾上

 

 

  2 缺少了regeneratorRuntime這個模塊,需要從外部引入

    2.1.在新建的文件夾中執行 npm init ,生成package.json文件(一路回車就好)

    2.2.執行 npm install [email protected]

    2.3.將node_modules/regenerator-runtime/runtime.js文件複製到小程序項目中(其他不要)

 

 

引用,即可

  import regeneratorRuntime from "../resource/js/runtime.js";

 

三、測試

onShow: function() {          //每次重新進入小程序,都獲取                  
      var d=this.a();      
    }, 

async a(){
      await this.testAsync()
      console.log('123')
    },
    testPromise() {
      return new Promise((resolve, reject) => {
        setTimeout(() => {
          console.log('Promise handle')
          resolve(123)
        }, 2000)
      })
    },  
    async testAsync() {
      const result = await this.testPromise()
      console.log('async test--', result)
    },

  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章