0

Ich bin ein Neuling auf eckig2. Ich habe eine Karte mit einigen Herstellern und ich bin die Lage, einen statischen HTML-Codeeckig 2 Leaflet dynamische Bindung auf Popup

L.marker([long, lat], { 
        icon: L.icon({ iconUrl: 'assets/marker-icon.png', shadowUrl: 'assets/marker-shadow.png' }) 
       }).bindPopup(HTMLCONTENT).addTo(this.map); 

in Popup-Inhalt zu binden, würde ich in meine htmlcontent, um einen dynamischen Inhalts einfügen *ngFor, (click) oder anderen Winkel Einrichtungen zu nutzen, also habe ich eine neue Winkelkomponente bauen wie in den folgenden Zeilen

markerlink.componentes.ts

import {Component, Input} from '@angular/core'; 
import 'rxjs/add/operator/map'; 

@Component({ 
    selector: 'app-marker-link', 
    templateUrl: './markerlink.template.html' 
}) 
export class MarkerLinkComponent { 

    @Input() 
    points: any[] = []; 

} 

markerlink.template.html

<div *ngFor="let single of points"> 
    <a href="{{single.url}}">{{single.name}}</a> 
</div> 

Zur Kompilierzeit funktioniert alles gut und eine Karte mit allen Markierungen wird erzeugt, wenn ich zum Index gehe, aber wenn ich auf einen von ihnen klicke, sehe ich ein leeres Popup.

Vielleicht gibt es eine falsche Konfiguration oder gibt es eine andere Möglichkeit, dies zu tun?

+0

Siehe https://stackoverflow.com/questions/45091330/how-to-spawn-angular-4-component-inside- a-leaflet-markers-popup – ghybs

Antwort

0

scheint

unter einen Tippfehler von "htmlcontent" im Code zu sein
L.marker([long, lat], { 
       icon: L.icon({ iconUrl: 'assets/marker-icon.png', shadowUrl: 'assets/marker-shadow.png' }) 
      }).bindPopup(HTMLCONTETN).addTo(this.map); 
+0

ja, tut mir leid, ich habe es behoben –