离子V2从提供商中的呼叫者页面调用函数



我有一个我想在提供商中调用函数(F1)的情况,然后从该函数(F1)我想在页面中调用另一个函数。

这是Page1.ts

的代码

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { Storage } from '@ionic/storage';
import {Utils} from '../../providers/utils';
@Component({
  selector: 'page-page1',
  templateUrl: 'page1.html'
})
export class Page1 {
  //storage: any;
  constructor(public navCtrl: NavController, public storage: Storage, public utils: Utils) {
   
    
  }
  test()
  {
    this.utils.testOut(this.ret);
  }
  ret()
  {
    console.log(this);
  }
}

和utils.ts是提供商:

import { Injectable } from '@angular/core';
import { Http , Headers} from '@angular/http';
/*
  Generated class for the HttpHelper provider.
  See https://angular.io/docs/ts/latest/guide/dependency-injection.html
  for more info on providers and Angular 2 DI.
*/
@Injectable()
export class Utils {
  constructor(private http: Http, private applicationConstants: ApplicationConstants) {
    //console.log('Hello utils Provider');
    //this.http = http;
    
  }
  
  testOut(success:Function)
  {
      success();
  }
}

但是当它再次进入page1.ts时,它将在console.log"未定义"中打印这意味着Page1.ts的所有变量和函数都不可用。

任何人可以帮忙吗?

如果从utils.ts中调用函数,则应首先导入Page1.ts。

相关内容

  • 没有找到相关文章

最新更新