フェロー!どの要素がどのように表示されているのかを角で伝えます。
Webアプリケーション用のコンポーネント(例:表)を作成しています。テーブルコンポーネントは非表示になることがあります。つまり、コンポーネントツリーにありますが、ユーザーには表示されません。例えば:
<custom-tab> <!-- shown -->
<custom-table />
</custom-tab>
<custom-tab> <!-- NOT shown -->
<custom-table />
</custom-tab>
隠された(図示せず)カスタムテーブル成分負荷が、それは両方のテーブル(図示せ、図示しない)のために角度によって実行されるngOnInit法、内部データです。 テーブルに特定のngIf(タブが表示されているかどうかを評価する)を追加すると、ngOnInitメソッドは呼び出されません。コンポーネントが表示されるかどうかを決定するコンポーネントの大きな階層の非常に複雑なシナリオが存在する可能性があるため、このソリューションは非常に面倒です。 ブラウザのDOMを見ると、正しいカスタムテーブルの要素がDOMに存在しないことがわかります。 Angularはこれらのコンポーネントをとにかく初期化します(そしてngOnInitを呼び出します)。
質問:
- 方法でコンポーネントがDOMに基本的であると(CSSを無視)に示すことができないという角度通信していますか?
- コンポーネントが表示されていない場合、コンポーネントの読み込みを禁止し、ユーザーに表示された場合のみデータを読み込むことができますか?
ありがとう!