在 Ionic 4 中向构造函数添加参数

Add parameters to constructor in Ionic 4

我是 Ionic 新手。我有一个位置页面,在 location/location.page.ts 文件下,有一个自动生成的空构造函数,如下所示:

constructor() { }

页面运行良好。但是,如果我向构造函数添加任何参数,则无法加载页面。

constructor(private httpProvider: HttpProvider, public geolocation: Geolocation) { }

给构造函数添加参数时还需要做其他事情吗?我正在做一个 Ionic 4 项目。我还在 appmodule.ts 文件中添加了它。我还缺少什么吗?

谢谢。

您需要像这样在 app.modules.ts 中导入 HttpModule :

import { HttpModule } from '@angular/http';

然后将其添加到您的导入中:

imports: [ 
    /// 
    HttpModule,
    ///
   ]

在同一个文件中,您需要声明您的地理位置提供商:

import { Geolocation } from '@ionic-native/geolocation';

这次将 Geolocation 添加到 providers 数组。

现在在您的 LocationPage 中,您的构造函数需要如下所示:

constructor(private http: Http, private location: Geolocation){
   ///
}

前提是你已经安装了合适的 npm 包 explained here

也适用于其他服务

使用 { providedIn: 'root' }在服务中点赞

@Injectable(
    { providedIn: 'root' }
)