WeChat アプレットには 6 つのカスタム コンポーネント ライフサイクル関数があります。
ライフサイクル機能 | パラメータ | 説明 |
作成した | なし | コンポーネントインスタンスが作成されたときに実行されます |
添付 | なし | コンポーネント インスタンスがページ ノード ツリーに入ったときに実行されます。 |
準備 | なし | コンポーネントがビューレイヤーに配置された後に実行されます |
移動した | なし | コンポーネント インスタンスがノード ツリー内の別の場所に移動したときに実行されます。 |
切り離された | なし | ページ ノード ツリーからコンポーネント インスタンスが削除されたときに実行されます。 |
エラー | オブジェクト エラー | コンポーネントメソッドがエラーをスローするたびに実行されます |
その中で、最も重要な 3 つのライフサイクル機能、すなわち作成、接続、分離があります。
- 作成されたライフサイクル関数は、コンポーネント インスタンスが作成されたときにトリガーされます
現時点では setData を呼び出すことはできません。いくつかのカスタム属性フィールドのみを追加できます
- コンポーネントが初期化されてページノードツリーに入ると、添付されたライフサイクル関数がトリガーされます
この時点で、this.data の初期化が完了し、ここでデータの初期化の操作を実行できます。
- コンポーネントがページ ノードを離れたときに分離ライフサイクル関数をトリガーする
ページを終了するときにトリガーされ、いくつかのデータクリーニング操作を実行できます
ライフサイクル関数は、Component コンストラクターの第 1 レベルのパラメーターで定義し、lifetimes フィールドで宣言できます。
lifetimes:{
attached(){
console.log('attached');
},
created(){
console.log('created');
}
}
コンポーネントが配置されているページのライフサイクル。ページの変更に応じて、コンポーネントが何らかの操作を実行する必要がある場合があります。
コンポーネントが配置されているページのライフサイクル機能は、pageLifetimes ノードで定義する必要があります
Component({
pageLifetimes:{
show:function(){},
hide:function(){},
resize:function(){}
}
}