2017-02-19 25 views
1

プロバイダ内で関数(f1)を呼び出し、次に関数(f1)から呼び出したい場合があります。ページ内の別の関数を呼び出したいと思います。ionic v2プロバイダの呼び出し側ページから関数を呼び出す

これはプロバイダである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に "undefined"と表示されます。 これは、page1.tsがすべての変数と機能で利用可能ではないことを意味します。

誰でも助けてください。

答えて

0

page1.tsの関数をutils.tsから呼び出す場合は、まずpage1.tsを読み込む必要があります。

+0

私はインポートしますが、同じもの –

関連する問題