File tree Expand file tree Collapse file tree 1 file changed +5
-4
lines changed
libs/angular-three/src/lib/di Expand file tree Collapse file tree 1 file changed +5
-4
lines changed Original file line number Diff line number Diff line change 11import {
2+ ApplicationRef ,
23 ChangeDetectorRef ,
34 DestroyRef ,
45 ElementRef ,
@@ -30,6 +31,7 @@ export function injectNgtRef<TElement>(
3031 injector = assertInjectionContext ( injectNgtRef , injector ) ;
3132 return runInInjectionContext ( injector , ( ) => {
3233 const cdr = inject ( ChangeDetectorRef ) ;
34+ const appRef = inject ( ApplicationRef ) ;
3335 const ref = is . ref ( initial ) ? initial : new ElementRef < TElement > ( initial as TElement ) ;
3436 const signalRef = createSignal ( ref . nativeElement ) ;
3537 const readonlySignal = signalRef . asReadonly ( ) ;
@@ -59,15 +61,14 @@ export function injectNgtRef<TElement>(
5961 set : ( newElement ) => {
6062 if ( newElement !== untracked ( signalRef ) ) {
6163 signalRef . set ( newElement ) ;
62- safeDetectChanges ( cdr ) ;
64+ // trigger CDR
65+ requestAnimationFrame ( ( ) => void safeDetectChanges ( cdr ) ) ;
6366 }
6467 } ,
6568 get : ( ) => readonlySignal ( ) ,
6669 } ) ;
6770
68- Object . defineProperty ( ref , 'untracked' , {
69- get : ( ) => untracked ( readonlySignal ) ,
70- } ) ;
71+ Object . defineProperty ( ref , 'untracked' , { get : ( ) => untracked ( readonlySignal ) } ) ;
7172
7273 return Object . assign ( ref , { children } ) as NgtInjectedRef < TElement > ;
7374 } ) ;
You can’t perform that action at this time.
0 commit comments