无法在离子2中构建导入服务的实例

时间:2016-07-07 09:39:47

标签: typescript angular ionic2

Service file

Calling service

我创建了这项服务,并希望在离子模式中使用它。当我想构建服务的例子时,它在第二张图片中显示突出显示的错误。任何人都请光一些,谢谢!

1 个答案:

答案 0 :(得分:0)

您忘记在构造函数中将关键字private添加到DBService,隐式地将其添加为类成员,因此您不需要执行this.dbservice = dbservice

constructor(private viewCtrl: ViewController, 
            private nav: NavController, 
            private dbservice: DBService) {
    this.priority = "high";
}

您需要将DBService添加到提供者数组中。在你的自举电话中:

bootstrap(App, [/* ..., */ DBService]);

或您的根组件(App?):

@Component({
    providers: [/* ..., */ DBService],
    templateUrl: ...
})
export class App {

在你DBServive中将Storage变量移出构造函数,或者Angular将尝试使用DI解决它:

@Injectable()
export class DBService {
    private storage: Storage;

    constructor() {
        storage = new Storage(SqlStorage);
        ...