アプレットのデュアルスレッドモデルとライフサイクル機能

デュアルスレッドモデルの概要

プロセス全体をレンダリングするインタフェース

図1に示すように、wxss JSファイルとレンダリングレイヤwxmlファイルの仮想DOMあるオブジェクトに変換されます

2、仮想論理生成されたDOMは、レンダリングレイヤに描画するために、実際のDOMツリーに合わせてオブジェクト

データ変更、更新データ論理層、JSは、差分アルゴリズムと比較して、変更をオブジェクト3、

実際のDOMツリー、更新ページにフィードバック4、更新されたコンテンツ、

アプレットは、ライフサイクルにapp.js

// app.js、唯一の小さなプログラムグローバルAppオブジェクト
// 以下は、バックグラウンドの手段を言った:ユーザーがバックグラウンドで実行されている携帯電話のアプレットに切り替わります。この操作は、私たちがバックグラウンドにフォアグラウンドから切り替えると呼ばれています。そして、我々は通常、バックグラウンドでの開発問題ではありません
// 以下、フロントデスクが参照と呼ばれる:重い携帯電話ユーザー、バックグラウンドで実行中のアプレットなり、ユーザの携帯電話のディスプレイインターフェイスへの呼び出しは、我々はバックグラウンドからフォアグラウンドへのスイッチと呼ばれます。
アプリは({ 

  / * 
   *アプレットの初期化が完了すると、それはonlaunchトリガされます(グローバルは一度だけトリガー)、携帯電話のスイッチを前面にonlaunch背景が実装されることはありません。もし
   あなたが携帯電話をオフにしない限り、*、再び彼を実行するには(閉じていますむしろ背景にスイッチが、直接バックグラウンド)アプレットにおいてアプレット実行を削除し、実行するために再度の上に回し、より
   * / 
  OnLaunch:関数(){ 
    にconsole.log(「初期の単語アプレット:OnLaunch」
  }、
/ * * *アプレットが時間のフォアグラウンドに、または重い背景を開始したとき、onShow実行されます、 *その後、我々は、この異なるシーン入るシーン値オプションによって判断することができます * / :onShow 機能(オプション){ コンソール。ログ( "アプレットonshow ,: onShow"、オプション) }
/ * 正面から背面にアプレットにアクセスするときトリガー:onHide * / onHide:関数(){ にconsole.log( "正面から背面にアプレットアクセストリガー:onHide" } 、
/ * グローバルに使用してもよい* / グローバルデータ:{ ユーザー情報:ヌル } })

ときApp.jsのライフサイクルを実行し、我々は全体のAppオブジェクトに何ができるのでしょうか?

実行アプリケーション()関数は、登録されたアプリです

1は、登録アプリでは、我々はユーザーがonshowによってシーンアプレットに入り、決定することができます

2、私たちはライフサイクルで機能することができ、要求されたデータの一部を行います。

3は、私たちは、このようなグローバルデータ上記のように、すべてのページが使用できるように、アプリでグローバルな目標を設定することができます

ページのアプレットのライフサイクル

// ページ/テスト/ test.js 
ページ({ 

  / * * 
   *ページ初期データ
   * / 
  データ:{ 
    MSG:自身IS SB " 
  }、

  / * * 
   *ライフサイクル機能-モニターページがロード、もしページをクローズ、一度だけのonloadない
   * / 
  のonLoad:機能(オプション){ 
      にconsole.log(「のonLoad」
  } 

   / * ライフサイクル機能-ページ表示モニタ、前景背景からページカットが実行される場合* / 
  onShow:関数(){ 
    にconsole.log( "onShow" 
  } 
    
  / * ライフサイクル機能-リスニング隠されたページ* / 
  onHide:関数(){
    はconsole.log( "onHide" 
  }、

  / * ライフサイクル機能-ページのアンインストールに聞く* / 
  ONUNLOAD:機能(){ 
    はconsole.log( "onHide" 
  }、

   / * -最初のページのレンダリングを聴くが完了すると、ライフサイクル機能をこの本当のDOMがレンダリングされると、彼らが実行されます* / 
  onReady:関数(){ 

  }、

  / * ページに関連するイベントハンドラ-モニターのユーザーアクションがドロップダウン、あなたはこのアクションを監視する場合、単語の下に、次にトリガー機能、あなたは「enablePullDownRefresh」に持っている:真のリフレッシュにプルダウンするように構成することができます。* / 
  OnPullDownRefresh:機能(){ 
      はconsole.log(「onPullDownRefresh」
  }、

  / * ページのプルイベントハンドラ底あなたが成功したこのイベントをトリガしたい場合は、ページの表示が十分ではありません表示する必要があります* /
  onReachBottom:関数(){ 
    にconsole.log( "onReachBottom" 
  } 

})

物事を行うことが可能なページ内のオブジェクトのページ

1、ライフサイクルでのネットワークの要求機能、サーバへのリクエストデータ

使用wxmlにデータ2、初期化データ、

3、wxmlイベントをリスニング、対応するイベントバインディング機能

4、プルモニタページ、ドロップダウンなど

おすすめ

転載: www.cnblogs.com/baohanblog/p/12457383.html