GOOGLE ADS

jueves, 21 de abril de 2022

¿Cómo acceder/editar la propiedad de estilo de un elemento de QueryList?

Aquí está mi código:

import { Component, ViewChildren, QueryList } from '@angular/core';
@Component({
selector: 'app-component',
templateUrl: './app.component.html',
})
export class AppComponent {
items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
@ViewChildren('myList') things: QueryList<any>;
ngAfterViewInit() {
this.things.changes.subscribe((t) => {
alert('width: ' + t.last.nativeElement.width);
});
}
}

Me gustaría obtener (y establecer, más tarde, por ejemplo) atributos de estilo en el último elemento de la ul, tal ancho. De esta manera, puedo editar el ancho después de que el elemento se haya agregado al DOM y aprovechar la transición css.

¿Pero parece que no puede acceder a esa t.lastpropiedad de ancho? (es decir, indefinido)


Solución del problema

UsaroffsetWidth

alert('width: ' + t.last.nativeElement.offsetWidth);

en cuanto a la "animación", angular proporciona un marco para hacerlo, de modo que no tenga que modificar manualmente los atributos de los elementos DOM. Simplemente declara el "estado" del elemento, angular hace la parte difícil de descubrir cómo hacer la transición de un estado a otro y lo aplica.

https://stackblitz.com/edit/angular-ivy-akmzyz?file=src%2Fapp%2Fapp.component.ts

No hay comentarios.:

Publicar un comentario

Flutter: error de rango al acceder a la respuesta JSON

Estoy accediendo a una respuesta JSON con la siguiente estructura. { "fullName": "FirstName LastName", "listings...