首页 > 解决方案 > 类型上不存在属性“地图” - Angular Google Maps 项目

问题描述

我是 Angular 新手,正在尝试制作一个简单的谷歌地图应用程序。我不断收到此错误error TS2339: Property 'map' does not exist on type 'AppComponent'

我试图访问地图属性,但我不能。也许我没有正确初始化它?

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss'],
})
export class AppComponent {
  title = 'simple-gmaps-demo';
  lat = 51.678418;
  lng = 7.809007;

  onMapReady(map: google.maps.Map) {

    this.map = map;
    this.map.setCenter({lat:-32, lng:127});
    this.map.setZoom(10);
    
    // this.map.data.loadGeoJson('http://localhost:4200/assets/sample-farms.geojson', {}, features => {
    //   console.log(features);
    // });
  }
}

标签: angulartypescriptagm

解决方案


您需要声明属性映射


import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.scss'],
})
export class AppComponent {
  title = 'simple-gmaps-demo';
  lat = 51.678418;
  lng = 7.809007;
  map: any; // add this line

  onMapReady(map: google.maps.Map) {

    this.map = map;
    this.map.setCenter({lat:-32, lng:127});
    this.map.setZoom(10);
    
    // this.map.data.loadGeoJson('http://localhost:4200/assets/sample-farms.geojson', {}, features => {
    //   console.log(features);
    // });
  }
}

推荐阅读