検索

ホームページ  >  に質問  >  本文

getElementById を使用する IntersectionObserver のルートは常に null です

Angular プロジェクトで、IntersectionObserver のビューポートを DOM の特定の部分に制限したいと考えています。

ID を使用して、ルートとして使用される要素を定義します:

リーリー

対応するコンポーネントで、getElementById を使用してルートを定義します:

リーリー

ただし、ログインしているルートは常に null です。

私は何を間違えたのでしょうか?

P粉501683874P粉501683874242日前392

全員に返信(1)返信します

  • P粉071602406

    P粉0716024062024-03-29 16:31:45

    まず第一に、スプレッド演算子の方法が間違っているため、残念なことに、@Input() 割り当てで設定されたデフォルト値を使用した直後に root を上書きしています (これまでのところ)私が知っているように、これは実際には入力として使用されません?)。

    この問題を解決するには、状況を逆転させる必要があるかもしれません:

    リーリー

    そうあるべきです

    リーリー

    次に、@ViewChild を使用して、コンテナ要素への参照を親から InfiniteScrollPageComponent に渡す方が合理的かどうか疑問に思っています。

    parent.component.html

    リーリー

    parent.component.ts

    リーリー

    無限ページコンポーネント.component.ts

    リーリー

    返事
    0
  • キャンセル返事