0

네이티브 Google지도 플러그인을 사용할 때 특히 앱 배경색을 설정하는 Ionic 3에 문제가 있습니다. 지도는 브라우저 아래의 기본 요소이며 이오니아 앱에 배경색을 설정하면지도가 표시되어 표시되지 않습니다.이온 성 네이티브 Google지도 플러그인 - 앱 배경색 설정

When looking at the docs 클래스의 경우 메서드가 있지만 Environment 클래스에는 해당 클래스를 사용하기로되어 있습니다. 아는 사람 있나요?

답변

0

좋아, 나는 단순히 Environment 클래스를 인스턴스화 한 다음 setBackgroundColor을 호출했습니다. 이렇게 :

import { Environment } from '@ionic-native/google-maps`; 

export class MyClass { 

    environment: Environment = null; 

    myMethod(): void { 
    this.environment = new Environment(); 
    this.environment.setBackgroundColor("red"); 
    } 
} 
0

와우. 나는 나를 위해 놀랐다. @ mkkekkonen의 대답은 확실히 효과가 있었지만 의도 한 디자인 방식이 아닙니다. (저는 cordova-plugin-googlemaps의 저자이며 메인 관리자는 @ionic-native/google-maps 플러그인입니다).

환경, 지오 코더, 구형, 폴리 (아직 구현되지 않음) 및 인코딩 클래스는 원본 플러그인에 정적 클래스입니다.

예를 들어 나는 아무도 이처럼 좋아하지 않는다고 생각하지만 가능합니다. 이것은 의도 한 방식이 아닙니다.

import { Environment } from '@ionic-native/google-maps`; 

export class MyClass { 

    environment: Environment = null; 

    myMethod1(): void { 
    (new Environment()).setBackgroundColor("red"); 
    } 
    myMethod2(): void { 
    (new Environment()).setBackgroundColor("blue"); 
    } 
} 

올바른 방법은

@IonicPage() 
@Component({ 
    selector: 'page-set-background-color', 
    templateUrl: 'set-background-color.html', 
    providers: [ 
    Environment 
    ] 
}) 
export class SetBackgroundColorPage { 

    map: GoogleMap; 

    constructor(
     public navCtrl: NavController, 
     public navParams: NavParams, 
     public environment: Environment, 
     public googleMaps: GoogleMaps) { 
    } 

    ionViewDidLoad() { 
    console.log('ionViewDidLoad SetBackgroundColorPage'); 
    this.map = this.googleMaps.create('map_canvas'); 
    this.environment.setBackgroundColor('red'); 
    } 

} 

이 mkkekkonen을이 방법을 사용하십시오 provider (4.3.3 @)를 사용하는 것입니다. 다음 릴리스에서이 버그를 수정합니다.


다음 릴리스에서 업데이트를

4.3.4 @ @ 이온 네이티브 후, 코드는 다음과 같습니다

@IonicPage() 
@Component({ 
    selector: 'page-set-background-color', 
    templateUrl: 'set-background-color.html' 
}) 
export class SetBackgroundColorPage { 

    map: GoogleMap; 

    constructor() { 
    } 

    ionViewDidLoad() { 
    console.log('ionViewDidLoad SetBackgroundColorPage'); 
    this.map = GoogleMaps.create('map_canvas'); 
    Environment.setBackgroundColor('red'); 
    } 

}