2016-09-27 15 views
1

文書は非常に不明です。私は、コードを置くべき場所を知りたい:Ionic 2、Angular 2でIonic Cloudを使用する方法

this.deploy.check().then((snapshotAvailable: boolean) => { 
    this.deploy.download().then(() => { 
     return this.deploy.extract().then(() => { 
     this.deploy.load(); 
     console.log('Extract Succesful'); 
    }; 
    }); 
}); 

は、だから、僕はイオン1.上の古い動作のように、私はapp.tsでコードを置くことができますしたいし、それがすべて(すべてのページとすべての時計プロバイダー)を検出し、変更があれば検出し、クライアントデバイスで自動更新を行います。しかし、私は各ページに「@ ionic/cloud-angular」からimport {Deploy}を注入する必要があると医師は言いましたか?これは本当に私を混乱させる。 1つのコードを1つの場所に置き、すべてを監視するにはどうすればよいですか。ちょっとそれを設定し、それを忘れてくださいIonic 1のような解決策...

助けてください!

答えて

0

アプリ全体で何かを使用する場合は、通常、ファイルコンストラクタapp.tsに追加します。

ionic-cloud-angularライブラリを見て、それが

+0

ありがとうございました。しかし、私は展開のための例を見つけることはありません.... –

0

あなたは機能を追加することができるよりも

platform.ready().then(() => { 
    ... 
    this.watchDeploy(); 
} 

後app.component.tsのコードを追加する必要があります。

watchDeploy(){ 
// check for update once then with a delay 
    this.checkNewVersion().then(()=> { 
    setTimeout(()=>this.watchDeploy(), 20 * 1000); 
}) 

checkNewVersion():Promise<any> { 
return new Promise<any>((resolve, reject)=> { 
    return this.deploy.check().then((snapshotAvailable: boolean) => { 
    if (snapshotAvailable) { 
    return this.deploy.download().then(() => { 
     return this.deploy.extract().then(() => { 
     this.deploy.load(); 
     console.log('Extract Succesful'); 
     resolve(); 
     }; 
    }); 
    } else { 
     resolve(); 
    } 
    }) 
}) 
} 

「@ ionic/cloud-angular」の「import {Deploy}」を使用するページに挿入するだけで済みます。ここでは、app.component.tsのみになります。 ベストプラクティスは、このための新しいサービスを作成することです。

関連する問題