0

私は自分のアプリケーションページの1つにGoogle Mapsの機能を追加しようとしています。このチュートリアルに従っています:http://www.joshmorony.com/creating-an-advanced-google-maps-component-in-ionic-2/

ステージ1で、私のapp.module.tsを更新してConnectivityServiceプロバイダリストに追加します。

このページには例がありますが、私のアプリケーションにはすでに2つのプロバイダがあり、追加の前に次のapp.module.tsを持っています:

import { NgModule, ErrorHandler } from '@angular/core';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
import { Page1 } from '../pages/page1/page1';
import { Page2 } from '../pages/page2/page2';
import { MapPage } from '../pages/map/map';

@NgModule({
  declarations: [
    MyApp,
    Page1,
    Page2,
    MapPage
  ],
  imports: [
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    Page1,
    Page2,
    MapPage
  ],
  providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}]
})
export class AppModule {}

その後、私は冒頭に追加したチュートリアルに順応するために

import { ConnectivityService } from '../providers/connectivity-service';

私のプロバイダを次のように変更しました:

プロバイダー:[{提供:ErrorHandler、useClass:IonicErrorHandler、ConnectivityService}]

しかし、私はエラーが発生します:

型の引数{宣言:(typeof Page1 | typeof Page2 |   typeof MyApp)[];インポート:ModuleWithProviders []; b ... 'はありません   タイプ 'NgModule'のパラメータに割り当てることができます。プロパティの種類   「プロバイダ」は互換性がありません。       タイプ '{提供:typeof ErrorHandler; useClass:typeof IonicErrorHandler; ConnectivityService:typeof C ... 'を割り当てることはできません   「プロバイダ[]」と入力します。         タイプ '{提供:typeof ErrorHandler; useClass:typeof IonicErrorHandler; ConnectivityService:typeof C ... 'を割り当てることはできません   「プロバイダ」と入力します。           オブジェクトリテラルは既知のプロパティのみを指定し、 'ConnectivityService'は 'Provider'型に存在しません。

私が次のように変更すると、同じ種類のエラーが発生します。

  providers: [{provide: ErrorHandler, useClass: IonicErrorHandler,  connectivityService:ConnectivityService}]

私がそれをする正しい方法は何ですか?

ありがとう!

1 답변


0

私はそれを見つけた、私は書かなければならなかった:

  providers: [ConnectivityService, {provide: ErrorHandler, useClass: IonicErrorHandler}]

しかし、私はなぜそれが動作し、何が{}でなければならないのか分からない

関連する質問

最近の質問