日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信小程序学习笔记(六)

發布時間:2024/10/8 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信小程序学习笔记(六) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

onLaunch(options):

  • 調用時機:小程序被加載完畢的時候調用。這個方法一般用來做一些初始化的事情。比如獲取用戶信息、獲取歷史緩存信息、獲取小程序打開來源等。
  • 參數:
    | 參數 | 類型 | 說明 | | :— | :— | :— | | path | String | 打開小程序的路徑 | | query | Object | 打開小程序的query |
    | scene | Number | 打開小程序的場景值 | | shareTicket | String | shareTicket,詳見 獲取更多轉發信息 | |
    referrerInfo | Object | 當場景為由從另一個小程序或公眾號或App打開時,返回此字段 | | referrerInfo.appId |
    String | 來源小程序或公眾號或App的 appId,詳見下方說明 | | referrerInfo.extraData | Object | 來源小程序
  • 傳過來的數據,scene=1037或1038時支持 | onShow(options):

  • 調用時機:小程序啟動,或從后臺進入前臺顯示時調用。如果想要在小程序每次進入到前臺的時候都執行一些事情,那么可以把代碼放在這個里面。比如一些實時動態更改的數據,用戶每次進來都要從服務器更新,那么我們就可以在這個里面做。
  • 參數:同 onLoad 。
  • onHide():

  • 調用時機:小程序被切換到后臺(包括微信自身被切換到后臺或者小程序暫時被切換到后臺時)。可以在這個方法中做一些數據的保存。
  • 參數:無。
    onError(String error):
  • 調用時機:小程序發生腳本錯誤,或者 api 調用失敗時觸發。在小程序發生錯誤的時候,會把錯誤信息發送到這個函數中,所以可以在這個函數中做一些錯誤收集。
  • 參數:error。
  • onPageNotFound(Object):

  • 調用時機:小程序要打開的頁面不存在時觸發。一般在代碼更新的時候,有些頁面被刪除了,但是其他地方沒有改過來的情況下會發生這種情況,或者一些活動頁面,活動結束后被關掉了。也可以在這個里面做一些錯誤的收集和頁面的重新跳轉。
  • 參數:
    | 字段 | 類型 | 說明 | | :— | :— | :— | | path | String | 不存在頁面的路徑 | | query | Object | 打開不存在頁面的
    query | | isEntryPage | Boolean | 是否本次啟動的首個頁面(例如從分享等入口進來,首個頁面是開發者配置的分享頁面) |
  • 開發者可以在 onPageNotFound 回調中進行重定向處理,但必須在回調中同步處理,異步處理(例如 setTimeout 異步執行)無效。示例代碼:
    App({ onPageNotFound(res) { wx.redirectTo({ url: ‘pages/…’
    }) // 如果是 tabbar 頁面,請使用 wx.switchTab
    }
    })
  • 注意:如果開發者沒有添加 onPageNotFound 監聽,當跳轉頁面不存在時,將推入微信客戶端原生的頁面不存在提示頁面。 如果 onPageNotFound 回調中又重定向到另一個不存在的頁面,將推入微信客戶端原生的頁面不存在提示頁面,并且不再回調 onPageNotFound。
  • getApp():

    獲取當前的 app 對象。一般在其他的 page 頁面中調用。有以下兩個注意點:

  • 不要在定義于 App() 內的函數中調用 getApp() ,使用 this 就可以拿到 app 實例。
  • 通過 getApp() 獲取實例之后,不要私自調用生命周期函數。
  • Page對象

    詳情請參考:https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page.html

    Page對象作用:

    Page(Object) 函數用來注冊一個頁面。接受一個 Object 類型參數,其指定頁面的初始數據、生命周期回調、事件處理函數等。

    數據渲染:

    需要放在模板中進行渲染的數據,需要放在 Page 對象的 data 屬性中。示例代碼如下:

    Page({data: {person: {username: "", age: 18}} }) <view> </view>

    如果以后想要修改 data 中的值,應該使用 setData 方法。 setData 函數用于將數據從邏輯層發送到視圖層(異步),同時改變對應的 this.data 的值(同步)。注意事項:

  • 直接修改 this.data 而不調用 this.setData 是無法改變頁面的狀態的,還會造成數據不一致。
  • 放到 data 中的值,只能使用可以 JSON 序列化的:字符串,數字,布爾值,對象,數組。否則將不會渲染。
  • 其中 key 可以以數據路徑的形式給出,支持改變數組中的某一項或對象的某個屬性,如 array[2].message , a.b.c.d ,并且不需要在 this.data 中預先定義。
  • Page生命周期函數:

    onLoad(Object query):

    頁面加載時觸發。一個頁面只會調用一次,可以在 onLoad 的參數中獲取打開當前頁面路徑中的參數。一般建議在這個函數中做一些頁面的數據初始化工作。

    onShow():

    頁面顯示/切入前臺時觸發。比如新推入了一個新的頁面,那么原來的頁面就處于后臺,這時候如果把新頁面又移除掉,那么下面的頁面就會調用 onShow 方法。

    onReady():

    頁面初次渲染完成時觸發。一個頁面只會調用一次,代表頁面已經準備妥當,可以和視圖層進行交互了。對界面內容進行設置的 API 如 wx.setNavigationBarTitleText ,比較合適在這個里面執行。

    onHide()

    頁面隱藏/切入后臺時觸發。如 navigateTo 或底部 tab 切換到其他頁面,小程序切入后臺等。

    onUnload()

    頁面卸載時觸發。如 redirectTo 或 navigateBack 到其他頁面時。

    路由:

    在小程序中所有頁面的路由全部由框架進行管理。 getCurrentPages() 可以獲取當前狀態下的頁面棧。

    總結

    以上是生活随笔為你收集整理的微信小程序学习笔记(六)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。