Hvordan kan jeg få en komponent med XLink: href verts bindinger til arbeid i vinkel med eføy aktivert

stemmer
0

Jeg var ikke i stand til å foreta en vellykket plunkr for dette, så jeg prøver å stille dette anyways basert på beskrivelse. Vi har i en NG komponent som bruker en vert binding for å binde et ikon egenskap til en svg XLink: 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;
}

Så så snart vi oppgradert til NG ni og aktivert Ivy våre ikoner sluttet å fungere. Men hvis vi deaktivere eføy det vil fungere med enten href eller XLink: href.

Prøvde å se etter feil i Ng repo men bare skrånende synes å finne dette ut? Noen ideer der ute?

En idé jeg har er at du må bruke setAttributeNSfor å sette XLink: href noen ganger. Jeg lurer på om jeg trenger å binde hostbinding en annen måte slik at det er sett ved bruk setAttributeNS?

Publisert på 19/03/2020 klokken 22:00
kilden bruker
På andre språk...                            

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