¿Cómo puedo obtener un componente utilizando xlink: href fijaciones de acogida para trabajar en angular de hiedra habilitado

votos
0

Yo no era capaz de hacer una plunkr éxito para esto, así que estoy tratando de hacer esta basado en la descripción de todos modos. Tenemos un componente de gas natural que utiliza una unión para unir una propiedad icono para un XLink SVG anfitrión: href.

@Component({
  selector: 'use', // tslint:disable-line
  template: ``
})
export class SohoIconUseComponent {
  // This works but we cant use it because it fails on Safari 12
  // @HostBinding('attr.href') get href(): string {
  //   return '#' + this.icon;
  // }

  // This does not work
  @HostBinding('attr.xlink:href') get xhrefLink(): string {
    return '#' + this.icon; 
  }

  @Input() icon: string;
}

Así que tan pronto como nos pasaron a GN 9 y habilitado Ivy nuestros iconos dejó de funcionar. Pero si desactivar la hiedra que va a funcionar, ya sea con o XLink href: href.

Intentado buscar errores en el repositorio Ng, pero no puede parecer a la forma de saberlo? Cualquier idea por ahí?

Una idea que tengo es que usted tiene que utilizar setAttributeNSpara establecer el xlink: href veces. Me pregunto si tengo que obligar a la hostbinding una manera diferente por lo que su conjunto utilizando setAttributeNS?

Publicado el 19/03/2020 a las 22:00
fuente por usuario
En otros idiomas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more