有没有办法在Angular4中链接@Injectable()

时间:2017-07-19 19:44:54

标签: angular ionic3 angular2-di

我正在构建一个Ionic 3应用程序(使用Angular 4)。我创建了一个LocationProvider,它允许我从实际的页面逻辑中提取位置服务,以便它可以重复使用。

我的LocationProvider使用@ ionic-native / geolocation(地理位置提供程序)。

当我通过@NgModule({ providers: [LocationProvider] })将我的LocationProvider注入页面时,出现错误,指出找不到地理位置提供程序。每当使用LocationProvider时,有没有办法包含Geolocation提供程序?或者我是否需要始终拥有providers:[LocationProvider, Geolocation]

我猜这不是离子特定的(但是Angular 4),有没有办法在NgModule中列出两个提供者?

1 个答案:

答案 0 :(得分:1)

providers接受单个提供者和提供者数组。

可以是

export const LOCATION_PROVIDERS = [LocationProvider, Geolocation];
...
providers: [LOCATION_PROVIDERS]
...

提供商也可以使用自己的模块进行包装并导入。