Renderer ist veraltet als eine Gunst für renderer2, alternative für `invokeElementMethod`?
Für ein side-Projekt von mir, ich will zu implementieren eine chat-stream, wo die neue Nachricht Hinzugefügt, um den Boden und die Fenster sollten ganz nach unten scrollen, um die Anzeige der neuesten Nachricht.
Damit zu tun, dass ich entschieden haben, zu verwenden ViewChildren
auf die Komponente zu finden, die Letzte Nachricht(neueste) und verwenden scrollIntoView
auf die nativeElement
.
Um nicht zu rufen Sie die Methode mit dem Zugriff auf die DOM-API direkt nativeElement.scrollIntoView()
. Ich glaube, ich werde verwenden müssen renderer.invokeElementMethod(nativeElement, 'scrollIntoView')
.
Problem ist renderer
ist veraltet, zu Gunsten der renderer2
und ich kann nicht scheinen zu finden, alternativen für die Methode invokeElementMethod
im renderer2
.
Frage ist, gibt es eine Methode, dass ich verpasst in renderer2
, die genau das tun? oder haben wir eine neue Weise tun-element-Methode aufrufen jetzt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie selectRootElement Methode der Renderer2.
Beispiel:
wo domElementId ist id='domElementId' in Ihre html -
UPDATE
Renderer2
wie es ist schlecht dokumentiert, für unit-testing,...für die Prüfung, die Sie" am Ende schreiben Sie Ihre eigenen rendererscrollIntoView
nur entfernt diesen Teil vom dom!! Ich musste wieder auf die ViewChild Methode der Aufruf direkt..prepare an element to be bootstrapped as a root element, and return the element instance
. Winkel.io/api/core/Renderer2#selectrootelementWir beantworten Sie dies durch ein Beispiel:
In Fall haben wir eine Ansicht wie diese:
Innen
ngAfterViewInit()
es muss konzentriert wie dieser: