2017-08-24 102 views
1

我從來沒有使用Ionic Deploy service。我想現在使用它。我在這裏有一個問題,希望你會幫助我。Ionic部署與注入部署

根據上面的文檔,我必須這樣做:

導入部署在雲客戶端,並指定其作爲 您的組件構造函數的依賴。

import {Component} from '@angular/core'; 
import {Deploy} from '@ionic/cloud-angular'; 

@Component(...) 
export class MyPage { 
    constructor(public deploy: Deploy) { 
    ... 
    } 
} 

我需要這對每一個page或在哪裏呢?根據官方文件,似乎Page。我不能用在像app.componet.ts這樣的單個地方嗎?爲什麼我們需要在每個page上覆制它?

+0

是。您需要將其注入要使用它的位置。 – iTR

+0

你可以多給點這個「你想使用它的地方」嗎?我不能在像'app.componet.ts'這樣的地方使用嗎?爲什麼我們需要在每一頁上覆制它? @iTR – Sampath

回答

1

在我的應用程序中,我做了應用程序啓動,所以在app.component.ts我做了注射,然後在平臺上檢查是否有新的更新。

import { Component } from '@angular/core'; 
import { Platform, LoadingController } from 'ionic-angular'; 
import { Deploy } from '@ionic/cloud-angular'; 

@Component({ 
    templateUrl: 'app.html' 
}) 
export class MyApp { 
    rootPage = TabsPage; 
    constructor(private platform: Platform, 
    public deploy: Deploy) { 
    platform.ready().then(() => { 
     this.checkUpdate(); 

    }); 
    } 

    checkUpdate() { 
    this.deploy 
     .check() 
     .then((snapshotAvailable: boolean) => { 
     if (snapshotAvailable) { 
      this.deploy.download().then(() => { 
      return this.deploy.extract() 
       .then(() => { 
       this.deploy.load(); 
       }); 
      }); 
     } 
     }); 
    } 
} 

如果你願意比如,你可以添加關於應用頁面,並在每次用戶打這個頁面上您檢查是否有新版本時,也可以做到在頁面

+0

如何更改'活動頻道'?希望你的代碼能和'production'頻道一起工作嗎? – Sampath

+0

@Sampath http://docs.ionic.io/services/deploy/#changing-the-active-channel –

+0

好的。看起來這對應用程序啓動來說是一個很大的負擔不?希望它能夠解決性能問題嗎?你的想法? – Sampath