Digamos que tengo un elemento personalizado <foo-bar></foo-bar>
En lugar de representar el marcado en las etiquetas, quiero reemplazarlas para que el elemento "foo-bar" ya no sea parte del DOM. Creo que Angular hace esto a través de la propiedad transclude.
¿Hay alguna manera de hacer esto en Aurelia?
Respuestas
6 para la respuesta № 1Necesitas usar el containerless
decorador en su componente.
De la documentación "s Sección de elementos personalizados:
@containerless()
- Hace que la vista del elemento se represente sin que el contenedor del elemento personalizado lo envuelva. Esto no se puede usar junto con@sync
o@useShadowDOM
. Tampoco se puede usar con comportamientos sustitutos.
Entonces su componente debería verse así:
import {customElement, bindable, containerless} from "aurelia-framework";
@customElement("say-hello")
@containerless()
export class SayHello {
@bindable to;
speak(){
alert(`Hello ${this.to}!`);
}
}