仮想スクロールとトグル\展開動作を使用してネストされたノード構造を構成しているアプリケーションで、PrimeNG 9 TreeTable に関する奇妙な問題に直面しています。
選択した後、別のノードをスクロールまたは展開すると、強調表示されたノードが失われます。強調表示された選択は、別のランダム ノードにジャンプします。
最小限の再現可能なデモはこちらにあります: https://stackblitz.com/edit/primeng9-treetablescroll-selections
これは、v10.0.3 リリースでこのバグ修正this.cdr.detectChanges();
を導入するために追加したngAfterViewInit
ライフサイクル フックに関係している可能性があるのではないかと考えていましたが、これを削除しても違いはなく、バグ修正が対処する に戻ります。ExpressionChangedAfterItHasBeenCheckedError
アプリケーションもまだ PrimeNG 10 に移行できないため、可能であれば v9 の修正\回避策を具体的に探しています。
ここで何が起こっているのでしょうか?
解決した
適切な回避策を見つけるために正しい方向に私を向けてくれた@DipenShahへの称賛。彼の答えに基づいて、親ノードを切り替えるときに v9 でツリー テーブルが展開\折りたたみイベントとノード選択イベントを発生させるケースを処理するために、彼のアプローチをもう少し強化しました。これは v10 では発生しません。
私の最終的な回避策はこちらhttps://stackblitz.com/edit/primeng9-treetablescroll-selections-utsj2p?file=src/app/app.component.ts