日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)百度小程序教程:頁面生命周期
  • 頁面生命周期
    • 原理圖
    • 首頁初次渲染全過程
      • 1. 初始化
      • 2. notify
      • 2. setInitData
      • 3. setData

    頁面生命周期

    原理圖

    以下內(nèi)容詳細的描述了一個頁面被渲染的全過程:

    在四子王等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需搭建網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷,外貿(mào)營銷網(wǎng)站建設(shè),四子王網(wǎng)站建設(shè)費用合理。

    1. FCP:First Contentful Paint ,即首次有內(nèi)容的繪制。
    2. FMP:First Meaningful Paint ,即首次有意義的繪制。
      下列加載時間線屏幕截圖直觀的介紹了FCPFMP的含義:

    首頁初次渲染全過程

    1. 初始化

    渲染線程和邏輯線程同步的進行初始化,在邏輯線程初始化時收集AppPage的初始化數(shù)據(jù),并且執(zhí)行App.onLaunch回調(diào)中的相關(guān)邏輯。
    此處我們以一個例子進行說明:

     
     
     
    1. // app.js
    2. App({
    3. globalData: 'init data',
    4. onLaunch(options) {
    5. this.globalData = 'onLaunch data';
    6. }
    7. });
     
     
     
    1. // /pages/index/index.js
    2. Page({
    3. data: {
    4. title: 'Index',
    5. // onLaunch data
    6. appData: getApp().globalData
    7. }
    8. })

    初始化后邏輯線程收集到的initData如下:

     
     
     
    1. {
    2. value: {
    3. title: 'Index',
    4. appData: 'onLaunch data'
    5. },
    6. // 其他信息
    7. otherMsg: ...
    8. }

    2. notify

    當渲染線程初始化后,向邏輯線程派發(fā)消息,請求獲取初始化渲染數(shù)據(jù)。
    同時,如果開發(fā)者有配置骨架屏,小程序會優(yōu)先加載骨架屏,此時即為FCP完成。如果骨架屏的高度撐滿整個頁面,那么我們認為此時為FMP完成,如果骨架屏信息不足以撐滿整個屏幕,那么我們認為此次渲染非有效的FMP。

    2. setInitData

    邏輯線程將初始化渲染數(shù)據(jù)派發(fā)給渲染線程,渲染進程拿到這些初始化數(shù)據(jù)后,會初始化頁面及自定義組件,最后將所有內(nèi)容渲染到頁面上。

    3. setData

    邏輯線程觸發(fā)以上生命周期后,邏輯層一般執(zhí)行了眾多的setData,每次setData均會使得邏輯線程向渲染線程傳送數(shù)據(jù),引起頁面的重新渲染。

    其中首次的setData,是在邏輯線程達到Inited狀態(tài)后,將業(yè)務(wù)相關(guān)的數(shù)據(jù)通過setData發(fā)送到渲染線程,觸發(fā)渲染線程Rerender,并可以觸發(fā)FMP。

     
     
     
    1. // 初始化時同步執(zhí)行
    2. app onLaunch
    3. // 收到 firstRender,并且客戶端派發(fā)onShow事件
    4. -> app onShow
    5. -> page onInit
    6. -> cpnt created -> cpnt attached -> page onLoad
    7. -> cpnt show -> page onShow
    8. -> cpnt ready -> page onReady

    cpnt 指一個自定義組件。


    標題名稱:創(chuàng)新互聯(lián)百度小程序教程:頁面生命周期
    轉(zhuǎn)載來源:http://www.dlmjj.cn/article/cdjijds.html