2017-08-21 13 views
1

"Component.completed"が発射されたのはいつですか?まさに「Component.completedが」発射され

ドキュメントがこれを言う:オブジェクトがインスタンス化された後に発行され

これがC++の場合は、オブジェクトがインスタンス化されているため、コンストラクタを使用して実行され、すべての保証が得られることがわかります。

しかし、QMLで、私は「インスタンス化された」というオブジェクトについて持っている保証のか分かりません。そのメモリは割り当てられていますか?そのプロパティは評価され、初期値を受け取っていますか?子孫のサブツリー全体が読み込まれていることを確認しますか?

答えて

1

保証は、オブジェクトがを完了した後にそれが発射されますです。これには、メモリの割り当て、オブジェクトの構築とプロパティバインディングのリギング、初期評価などが含まれます。保証するものではありません何

は、オブジェクトがツリーにネストされているときの信号が処理され完成した順序です。あなたはそれに頼るべきではありません。その全体のオブジェクトツリーが完了する前に、オブジェクトが完了しませんが、いくつかの不可解な理由のために、あなたは通知がツリーに定義された順序で到着することを期待することはできません。

関連する問題