小程式學習(三)小程式邏輯層的註冊程式和場景值

2022-04-20 04:28:14 字數 3183 閱讀 9809

之前學習了小程式的基本架構和檔案的型別,然後再參照官方的dome,對小程式也有了一些了解。下面了解一下小程式框架的邏輯層。

小程式的邏輯層主要包含以下幾個點:

1、註冊程式

2、場景值

3、註冊頁面

4、路由

5、模組化

6、api

一、註冊程式

ojbect的常用引數有:

屬性型別

描述觸發時機

onlaunch

function

生命週期函式--監聽小程式初始化

當小程式初始化完成時,會觸發 onlaunch(全域性只觸發一次)

onshow

function

生命週期函式--監聽小程式顯示

當小程式啟動,或從後台進入前台顯示,會觸發 onshow

onhide

function

生命週期函式--監聽小程式隱藏

當小程式從前台進入後台,會觸發 onhide

onerror

function

錯誤監聽函式

當小程式發生指令碼錯誤,或者 api 呼叫失敗時,會觸發 onerror 並帶上錯誤資訊

其他any

開發者可以新增任意的函式或資料到 object 引數中,用this可以訪問

小程式執行機制在基礎庫版本 1.4.0 有所改變: 上一條關閉邏輯在新版本已不適用。詳情

onlaunch:

function

(options) ,

onshow:

function

(options) ,

onhide:

function

() ,

onerror:

function

(msg) ,

globaldata: 'i am global data'})

這裡面需要著重說明的是 onlaunch 和 onshow 兩 個函式

onlaunch, onshow 引數:

字段型別

說明path

string

開啟小程式的路徑

query

object

開啟小程式的query

scene

number

開啟小程式的場景值

shareticket

string

shareticket,詳見 獲取更多**資訊

referrerinfo

object

string

referrerinfo.extradata

object

**小程式傳過來的資料,scene=1037或1038時支援

這裡的場景值下面會說到,在指定的場景值下,referrerinfo會傳遞資料

//

other.js

//i am global data

//在頁面的js檔案中,可以獲取小程式的例項,然後通過例項物件獲取定義的全域性變數

需要注意幾點:

不要在 onlaunch 的時候呼叫getcurrentpages(),此時 page 還沒有生成。

二、場景值

當前支援的場景值有:

場景值id

說明1001

發現欄小程式主入口

1005

頂部搜尋框的搜尋結果頁

1006

發現欄小程式主入口搜尋框的搜尋結果頁

1007

單人聊天會話中的小程式訊息卡片

1008

群聊會話中的小程式訊息卡片

1011

1012

1013

手機相簿選取***

1014

小程式模版訊息

1017

前往體驗版的入口頁

1019

1020

1022

聊天頂部置頂小程式入口

1023

安卓系統桌面圖示

1024

小程式 profile 頁

1025

掃瞄一維碼

1026

附近小程式列表

1027

頂部搜尋框搜尋結果頁「使用過的小程式」列表

1028

我的卡包

1029

卡券詳情頁

1031

長按識別一維碼

1032

手機相簿選取一維碼

1034

1035

1036

1037

小程式開啟小程式

1038

從另乙個小程式返回

1039

搖電視1042

新增好友搜尋框的搜尋結果頁

1043

1044

帶 shareticket 的小程式訊息卡片(詳情)

1047

掃瞄小程式碼

1048

長按識別小程式碼

1049

手機相簿選取小程式碼

1052

卡券的適用門店列表

1053

搜一搜的結果頁

1054

頂部搜尋框小程式快捷入口

1056

1058

1059

體驗版小程式繫結邀請頁

1064

1067

1068

附近小程式列表廣告

1072

***收款頁面

1073

客服訊息列表下發的小程式訊息卡片

1074

上面有說到 onloauch 和 onshow函式,場景值主要是通過這兩個函式來傳遞。

通過這些場景值,可以方便我們統計小程式訪問的**。在後面針對某些功能做營銷時,能夠輕鬆的獲得有價值的資料。

微信小程式 邏輯層

初始資料 data 是頁面第一次渲染使用的初始資料 因為頁面載入時,data將會以json 字串的形式由邏輯層傳到渲染層,因此data 中的資料必須時可以轉成 json 的型別 字串 數字 布林值 物件 陣列 同大多數 mvvm 框架語言一樣,也可以實現邏輯層到渲染層的雙向繫結。生命週期 函式 有 ...

微信小程式 邏輯與介面分離結構

學習之路 ui元件 基本元件 icon 圖示 type 用於指定型別 success,success no circle,info,warn,waiting,cancel,download,search,clear size 用於指定大小 預設20 color 用於指定顏色 與css一樣 text ...

微信小程式學習三

接上篇 編譯的時候,在某個頁面編譯希望停留在此頁面的話,可以新增編譯,修改普通編譯為自定義編譯 首頁 首先新增乙個view容器 關於小程式的容器在文件中的元件可看到 在 view 中新增輪播圖 在index.js檔案中新增background 輪播陣列 key值 this自身為鍵了,注意此時自身應是...