当我尝试在ionic3中构建此代码时,它向我显示此警报: 类型“ MapService”上不存在属性“ tempIcon”。
离子生成
import { Injectable } from "@angular/core";
import { BaseLayersService } from "./base-layers.service";
import { WmsLayersService } from "./wms-layers.service";
import { ToastController } from 'ionic-angular';
import L from "leaflet";
@Injectable()
export class MapService {
public map: L.Map;
constructor(private wmsLayersService: WmsLayersService, private baseLayersService: BaseLayersService, public toastCtrl: ToastController) {
}
loadMap() {
this.tempIcon = L.icon({
iconUrl: 'assets/imgs/position.png',
shadowUrl: '',
iconSize: [48, 48], // size of the icon
shadowSize: [0, 0], // size of the shadow
iconAnchor: [48, 48], // point of the icon which will correspond to markers location
shadowAnchor: [0, 0], // the same for the shadow
popupAnchor: [48, 48] // point from which the popup should open relative to the iconAnchor
});
const map = L.map("map", {
//layers: [this.baseLayersService.baseLayers.OpenStreetMap, this.wmsLayersService.wmsLayers.Falabella]
layers: [this.wmsLayersService.wmsLayers.Falabella, this.baseLayersService.baseLayers.CartoDB ]
});
L.control.layers(this.baseLayersService.baseLayers, this.wmsLayersService.wmsLayers).addTo(map);
L.control.scale().addTo(map);
答案 0 :(得分:2)
我认为您没有宣布。只是尝试像这样声明它
public map: L.Map;
public tempIcon: any;