2017-07-18 80 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找到它。