2016-08-17 12 views
4

Ionic 2を使用してプログラミングしています。ボタンをクリックするとポップアップアラートが表示されます。Ionic 2、アラートを正しく使用する方法

これはhome.html私のコードです:

<button (click)='openFilters()'>CLICK</button> 

そして、私のhome.ts

import {Component} from '@angular/core'; 
import {Page, NavController, Alert} from 'ionic-angular'; 

@Component({ 
    templateUrl: 'build/pages/home/home.html' 
}) 
export class HomePage { 
    constructor(nav: NavController, alertCtrl: AlertController) { 

    } 

    openFilters() { 
    let alert = this.alertCtrl.create({ 
     title: 'Low battery', 
     subTitle: '10% of battery remaining', 
     buttons: ['Dismiss'] 
    }); 
    alert.present(); 
    } 
} 

に、私はこのトピックに関するいくつかのstackoverflowの質問を読んでいるとしようとしましたこれを次のように実装します。

openFilters() { 
    let alert:Alert = Alert.create({ 
     title: 'Low battery', 
     subTitle: '10% of battery remaining', 
     buttons: ['Dismiss'] 
    }); 
    this.nav.present(alert); 
    } 

まだ何も成就しませんでした。私は間違いがある。

+0

プロジェクトでどのバージョンのIonicを使用していますか?プロジェクトフォルダに 'ionic info'を実行することで確認できます。これは' Ionic Framework Version'です。私がこれを求めているのは、 'Alerts'が作成された方法が' beta.10'から 'beta.11'に変更されたからです。 – sebaferreras

+0

あなたはおそらく、あなたは何を得るのエラー表示されるはずです – YakovL

+0

マイイオン性情報: Cordove CLI:6.3.0 イオンFrameworkのバージョン:2.0.0-beta.11 イオンCLIバージョン:2.0.0-beta.37 イオンのAppのLibバージョン:2.0.0-beta.20 OS:Windows 7 SP1 ノードバージョン:v4.4.7 –

答えて

9

このインポートすることを確認してください:

import {AlertController} from 'ionic-angular'; 

をし、このようなコードがあります。

constructor(private alertController: AlertController) { 

} 


openFilters() { 
    let alert = this.alertController.create({ 
     title: 'Example', 
     subTitle: 'Example subtitle', 
     buttons: ['OK'] 
    }); 

    alert.present(); 
} 

物事はベータ版11に変更されている、およびオンライン・ドキュメントがまだ更新されていないかのように思えるがnode_modulesのionic-angularフォルダに入って、より良い文書の例として使用しようとしているコンポーネントを見つけることができます。

+0

それは動作します、唯一の違いはプライベートを追加する必要があることです。何故ですか? –

+0

私が使用しようとしているすべてのコンストラクタはプライベートでなければならないのですか? –

+0

あなたはプライベートかパブリックを追加することができますが、質問には追加しませんでした。プライベートまたはパブリックを追加することによって、ローカル変数がクラスに自動的に追加され、 'this.alertController'を呼び出すことができます。 –

関連する問題