2017-04-18 49 views
0

我創建了一個眼睛圖標按鈕密碼查看/ notview綁定相同功能diferent按鈕離子V2

但我需要是「恢復密碼」頁面

在這個頁面一個頁面有3個輸入與他們相同的按鈕...

當我點擊一個,所有他們成爲切換。

如何將每個單獨綁定到相同的函數?

的代碼如下:

HTML

<ion-item> 
    <ion-input placeholder="Senha antiga" [type]="isSenhaView ? 'password' : 'text'"> 
    </ion-input> 
    <button ion-button icon-only item-right clear color="light" (click)="toggleSenhaView()"><ion-icon [name]="isSenhaView ? 'eye' : 'eye-off'"></ion-icon> 
    </button> 
</ion-item> 

TS

isSenhaView : boolean = true; 
    toggleSenhaView():void{ 
    this.isSenhaView = !this.isSenhaView; 
    } 

非常感謝你。

+1

其更好地創建一個組件 – Lakshay

+0

我也想過,但是我真的不知道該怎麼構建這個組件......它應該如何? – GustavoA

回答

0

代碼示例:

<ion-item> 
    <ion-input placeholder="Senha antiga" [type]="isSenhaView1 ? 'password' : 
     'text'"> 
    </ion-input> 
    <button ion-button icon-only item-right clear color="light" 
     (click)="toggleSenhaView(1)"> 
     <ion-icon [name]="isSenhaView ? 'eye' : 'eye-off'"></ion-icon> 
    </button> 
</ion-item> 

<ion-item> 
    <ion-input placeholder="Senha antiga" [type]="isSenhaView2 ? 'password' 
     : 'text'"> 
    </ion-input> 
    <button ion-button icon-only item-right clear color="light" 
     (click)="toggleSenhaView(2)"> 
    <ion-icon [name]="isSenhaView ? 'eye' : 'eye-off'"></ion-icon> 
</button> 
</ion-item> 

<ion-item> 
    <ion-input placeholder="Senha antiga" [type]="isSenhaView3 ? 'password' : 
     'text'"> 
</ion-input> 
    <button ion-button icon-only item-right clear color="light" 
    (click)="toggleSenhaView(3)"> 
    <ion-icon [name]="isSenhaView ? 'eye' : 'eye-off'"></ion-icon> 
    </button> 
</ion-item> 



isSenhaView1 : boolean = true; 
isSenhaView2 : boolean = true; 
isSenhaView3 : boolean = true; 

toggleSenhaView(x):void{ 
    switch (x) 
    { 
    case 1: 
     this.isSenhaView1 = !this.isSenhaView1; 
     break; 
    case 2: 
     this.isSenhaView2 = !this.isSenhaView2; 
     break; 
    case 3: 
     this.isSenhaView3 = !this.isSenhaView3; 
     break;     
    } 
+0

是的,這是有效的,但我正在考慮更動態的東西。 – GustavoA

2

你可以easyly使用自己的函數中3個布爾

isSenhaView : boolean = true; 
isSenhaView2 : boolean = true; 
isSenhaView3 : boolean = true; 
    toggleSenhaView():void{ 
    this.isSenhaView = !this.isSenhaView; 
    this.isSenhaView2 = !this.isSenhaView; 
    this.isSenhaView3 = !this.isSenhaView; 
    } 
+0

這是一個醜陋的解決方案,你必須添加一個布爾每場,我同意@Lakshay:最好創建一個組件 – Groben