搜尋
首頁微信小程式小程式開發微信小程式 this和that詳解及簡單實例

微信小程式 this和that詳解及簡單實例

Feb 21, 2017 pm 05:52 PM
微信小程式

微信小程式中,在wx.request({});方法呼叫成功或失敗之後,有時候會需要取得頁面初始化資料data的情況,這個時候,如果使用,this.data來獲取,會出現取得不到的情況,調試頁面也會報undefiend。原因是,在javascript中,this代表著當前對象,會隨著程式的執行過程中的上下文改變,在wx.request({});方法的回呼函數中,物件已經改變,所以已經不是wx. request({});方法物件了,data屬性也不存在了。官方的解決辦法是,複製一份當前的對象,如下:


var that=this;//把this對象複製到臨時變數that


#在success回呼函數中使用that.data就能取得資料了。
不過,還有另外一種方式,也很特別,是將success回呼函數換一種聲明方式,如下:
success: res =>{
  this.setData({
      loadingHidden: true,
      hideCommitSuccessToast: false
  })
}

在這種方式下,this可以直接使用,完全可以獲得到data數據。

再給一個完整的例子:
success: res => {
  if (res.data.code != 0) {
   // 提交失败
   this.setData({
    loadingHidden: true,
    hiddenTips: false,
    tipsContent: res.data.message
   })
  } else {
   // 提交成功
   this.setData({
    loadingHidden: true,
    hideCommitSuccessToast: false
   })
   subBtn = false;

   // 定时,3秒消失
   setTimeout(() => {
    this.setData({
     hideCommitSuccessToast: true
    })
    wx.navigateBack({ delta: 2 });
   }, 2000);

  }
}


#更多微信小程式this和that詳解及簡單實例相關文章請關注PHP中文網!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具