href Host-Bindungen an der Arbeit in Winkeln mit Efeu aktiviert: Wie kann ich eine Komponente mit xlink erhalten

stimmen
0

Ich war nicht in der Lage, eine erfolgreiche plunkr dafür zu machen, damit ich dies versuchen sowieso auf Beschreibung basiert zu fragen. Wir haben eine NG-Komponente, die ein Host verwendet Bindung ein Symbol Eigenschaft auf eine svg xlink zu binden: 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;
}

Also, sobald wir NG aktualisiert 9 und aktiviert Ivy unsere Symbole aufgehört zu arbeiten. href: Aber wenn wir deaktivieren Efeu wird es mit beiden href oder xlink arbeiten.

Versuchte die Suche nach Fehlern in dem Ng Repo aber gerade kann nicht scheinen, diese ein, um herauszufinden? Irgendwelche Ideen da draußen?

Eine Idee , die ich habe , ist , dass Sie verwenden müssen setAttributeNSdie xlink einzustellen: href manchmal. Ich frage mich , wenn ich die hostbinding eine andere Art und Weise , so dass ihr Satz mit Notwendigkeit zu binden setAttributeNS?

Veröffentlicht am 19/03/2020 um 22:00
quelle vom benutzer
In anderen Sprachen...                            

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