【发布时间】:2017-04-18 23:49:17
【问题描述】:
我正在尝试将谷歌地图功能添加到我的应用页面之一,我正在关注本教程:http://www.joshmorony.com/creating-an-advanced-google-maps-component-in-ionic-2/
在第 1 阶段。我需要更新我的 app.module.ts 以将 ConnectivityService 包含在提供程序列表中。
该页面提供了一个示例,但在我的应用程序中,我已经有两个提供程序,这导致我在添加之前拥有以下 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';
并将我的提供者更改为:
提供者:[{provide: ErrorHandler, useClass: IonicErrorHandler, ConnectivityService}]
但我得到一个错误:
类型 '{ 声明的参数:(typeof Page1 | typeof Page2 | 类型 MyApp)[];进口:ModuleWithProviders[]; b...' 不是 可分配给“NgModule”类型的参数。财产类型 “提供者”不兼容。 类型'{提供:typeof ErrorHandler; useClass:IonicErrorHandler 类型; ConnectivityService: typeof C...' 不可分配 键入“提供者 []”。 类型'{提供:typeof ErrorHandler; useClass:IonicErrorHandler 类型; ConnectivityService: typeof C...' 不可分配 键入“提供者”。 对象字面量只能指定已知属性,而“Provider”类型中不存在“ConnectivityService”。
如果我更改为:
providers: [{provide: ErrorHandler, useClass: IonicErrorHandler, connectivityService:ConnectivityService}]
我的正确做法是什么?
谢谢!
【问题讨论】: