2017-07-18 81 views
1

嗨,我正在关注如何将Google地图实现为离子模式的YouTube视频。我有这个错误,我不明白。当我运行应用程序,我得到这个错误:Typescript错误:类型'{}'中缺少属性'mapType'

视频链接: https://www.youtube.com/watch?v=jD5yYX1KWXA

打字稿错误:

类型的参数“{}”是不能分配给类型“GoogleMapOptions”的参数。属性'mapType'在类型'{}'中缺失。

home.ts

import { Component } from '@angular/core'; 
import { NavController } from 'ionic-angular'; 

import {GoogleMap, GoogleMaps, LatLng, CameraPosition, GoogleMapsEvent, MarkerOptions, Marker} from '@ionic-native/google-maps'; 


@Component({ 
    selector: 'page-home', 
    templateUrl: 'home.html' 
}) 
export class HomePage { 

    constructor(public navCtrl: NavController,public googleMaps: GoogleMaps) { 

    } 

    ngAfterViewInit() 
    { 
    this.loadMap(); 
    } 

    loadMap() 
    { 
    let element = document.getElementById('map'); 
    let map: GoogleMap = this.googleMaps.create(element, {}); 
    } 

} 

误差以指向.....(元件,{});

我根本无法放{}。

回复111还是新的离子型

+0

可以跳过{}作为参数,根据[此](https://ionicframework.com/docs/native/google-maps /)文档 – Max

回答

0

如果你不想pa SS任何选择的地图,只是省略参数是这样的:

loadMap() { 
    let element = document.getElementById('map'); 
    let map: GoogleMap = this.googleMaps.create(element); 
    } 
+1

好的,谢谢。省略{}权利没有任何错误? – Suresh

+0

当然不是,因为这是初始化地图的有效方法。它将使用默认配置进行初始化,但这就是全部:) – sebaferreras

0

这意味着,通过分型的作者(打字稿定义),该GoogleMapOptions要求指定mapType

的手段之一:

  • 需要它,你需要指定它(例如...create(element, { mapType: 'street' }),或
  • 的分型是错误的,作者需要解决它

见。如果@ionic-native/google-maps提供了类型,如果没有,你应该在github.com/DefinitelyTyped/DefinitelyTyped找到它。