// app.js
App({
  onLaunch() {    let that=this
    const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function (res) {
      // 请求完新版本信息的回调
        console.log(res.hasUpdate)
  })
    updateManager.onUpdateReady(function () {
      console.log('运行更新')
            // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
            wx.clearStorage()
            updateManager.applyUpdate()
    })
    if (wx.canIUse('getUpdateManager')) {
      const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function (res) {
        console.log('onCheckForUpdate====', res)
        // 请求完新版本信息的回调
        if (res.hasUpdate) {
          console.log('res.hasUpdate====')
          updateManager.onUpdateReady(function () {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经准备好,是否重启应用?',
              success: function (res) {
                console.log('success====', res)
                // res: {errMsg: "showModal: ok", cancel: false, confirm: true} 
                if (res.confirm) {
                  // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
                  updateManager.applyUpdate()
                }
              }
            })
          })
          updateManager.onUpdateFailed(function () {
            // 新的版本下载失败
            wx.showModal({
              title: '已经有新版本了哟~',
              content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~'
            })
          })
        }
      })
    }

  },
  /**
   * 自定义post函数,返回Promise
   * +-------------------
   * @param {String}      url 接口网址
   * @param {arrayObject} data 要传的数组对象 like: {name: 'name', age: 32}
   * +-------------------
   * @return {Promise}    promise 返回promise供后续操作
   */
  post: function (url, data, type) {
    wx.showNavigationBarLoading()
    // wx.showLoading({
    //   title: '加载中',
    // })
    var promise = new Promise((resolve, reject) => {
      let that = this;
      let postData = data;
      //网络请求
      let header = {
        'content-type': 'application/json',
        'token': wx.getStorageSync('token') ? wx.getStorageSync('token') : ''
      }
      wx.request({
        url: that.globalData.baseUrl + url,
        data: postData,
        method: type || "POST",
        header: header,
        success: function (res) {
          //返回取得的数据
          // console.log(res)
          if (res.statusCode == 200) {
            resolve(res.data);
          } else {
            // wx.showModal({
            //     title: '提示',
            //     content: res.data.msg,
            //     showCancel: false,
            // })
            reject(res.data)
          }
          // wx.hideLoading()
          wx.hideNavigationBarLoading()
        },
        fail: function (e) {
          console.log(e)
          reject('网络出错');
          // wx.hideLoading()
          wx.hideNavigationBarLoading()
        }
      })
    });

    return promise;
  },








  globalData: {
    baseUrl: "https://english.brofirst.cn/api/",
    imgBaseUrl: "https://english.brofirst.cn",
    userInfo: null
  }
})