Skip to content

Commit 1cbdb32

Browse files
committed
refactor(aria/utils): use write in afterRenderEffect for deferred content updates
1 parent 62afc23 commit 1cbdb32

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

src/aria/private/deferred-content/deferred-content.ts

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -53,17 +53,19 @@ export class DeferredContent implements OnDestroy {
5353
readonly deferredContentAware = signal(this._deferredContentAware);
5454

5555
constructor() {
56-
afterRenderEffect(() => {
57-
if (this.deferredContentAware()?.contentVisible()) {
58-
if (!this._isRendered) {
56+
afterRenderEffect({
57+
write: () => {
58+
if (this.deferredContentAware()?.contentVisible()) {
59+
if (!this._isRendered) {
60+
this._destroyContent();
61+
this._currentViewRef = this._viewContainerRef.createEmbeddedView(this._templateRef);
62+
this._isRendered = true;
63+
}
64+
} else if (!this.deferredContentAware()?.preserveContent()) {
5965
this._destroyContent();
60-
this._currentViewRef = this._viewContainerRef.createEmbeddedView(this._templateRef);
61-
this._isRendered = true;
66+
this._isRendered = false;
6267
}
63-
} else if (!this.deferredContentAware()?.preserveContent()) {
64-
this._destroyContent();
65-
this._isRendered = false;
66-
}
68+
},
6769
});
6870
}
6971

0 commit comments

Comments
 (0)