2017-06-12 55 views
0

我在其中一個頁面中創建了片段選項。代碼如下:離子2片段,內容不存在

<div padding> 
    <ion-segment [(ngModel)]="accion"> 
    <ion-segment-button value="crear"> 
     Crear zona 
    </ion-segment-button> 
    <ion-segment-button value="modificar"> 
     Modificar zona 
    </ion-segment-button> 
    </ion-segment> 
</div> 

<ion-card center *ngIf="accion=='crear'"> 
    <ion-card-content> 

    <ion-list> 
     <ion-item> 
     <ion-label floating> Nombre del area: </ion-label> 
     <ion-input type="text" [(ngModel)]="nombreArea"> </ion-input> 
     </ion-item> 
     <ion-item> 
     <label>Dispositivo asociado:</label> 
     <ion-list> 
      <ion-item *ngFor="let dispositivo2 of dispositivosAnadir"> 
      <ion-label> {{dispositivo2.name}} </ion-label> 
       <ion-checkbox color="royal" [(ngModel)]="dispositivo2.selected" value="dispositivo2.value"></ion-checkbox> 
      </ion-item> 
     </ion-list> 
     </ion-item> 
    </ion-list> 

    <div padding> 
     <button (click)="marcarTodos()" ion-button icon-left color="royal"> 
     <ion-icon name="checkmark-circle"></ion-icon> Marcar todos 
     </button> 
     <button (click)="desmarcarTodos()" ion-button icon-left color="royal"> 
     <ion-icon name="radio-button-off"></ion-icon> Desmarcar todos 
     </button> 
    </div> 

    <div padding> 
     <button (click)="startShape()" [disabled]="pintando" ion-button icon-left color="royal"> 
     <ion-icon name="brush"></ion-icon> Pintar zona 
     </button> 
     <button (click)="endShape()" [disabled]="!pintando" ion-button icon-left color="royal"> 
     <ion-icon name="flag"></ion-icon> Fin pintar zona 
     </button> 
     <button (click)="cancelShape()" [disabled]="!pintando" ion-button icon-left color="royal"> 
     <ion-icon name="close"></ion-icon> Cancelar 
     </button> 
    </div> 

    </ion-card-content> 
</ion-card> 


<ion-card center *ngIf="accion=='modificar'"> 
    <ion-card-content> 

    <ion-list> 
     <ion-item> 
     <ion-label>Seleccionar zona: </ion-label> 
     <ion-select [(ngModel)]="zonasSelector.seleccionada" (ionChange)="cambioZonaSeleccionada()"> 
      <ion-option *ngFor="let zona of zonasSelector.array" [value]="zona.value">{{zona.name}}</ion-option> 
     </ion-select> 
     </ion-item> 
     <ion-item> 
     <ion-list> 
      <ion-item *ngFor="let dispositivo of dispositivosModificar"> 
      <ion-label> {{dispositivo.name}} </ion-label> 
       <ion-checkbox color="royal" [(ngModel)]="dispositivo.selected" value="dispositivo.value" [disabled]="zonasSelector.seleccionada == null"></ion-checkbox> 
      </ion-item> 
     </ion-list> 
     </ion-item> 
    </ion-list> 

    <div padding> 
     <button ion-button icon-left (click)="modificarZona()" [disabled]="zonasSelector.seleccionada == null" color="royal"> 
     <ion-icon name="checkmark"></ion-icon> Modificar 
     </button> 
     <button ion-button icon-left (click)="showConfirmDelete()" [disabled]="zonasSelector.seleccionada == null" color="royal"> 
     <ion-icon name="trash"></ion-icon> Eliminar 
     </button> 
    </div> 

    </ion-card-content> 
</ion-card> 

之前,我是不顯示在段分開的內容和運作良好,但是當段推出它,我有一個問題。問題是,在這兩個細分市場上,我都有一個ngFor表示一組複選框,並且在第一次加載頁面時,檢查結果很好顯示,但是如果我更改了細分受衆羣,那麼選擇什麼都不重要,這樣checbox就會消失。

有人有想法嗎?

回答

0

如果有人感興趣,我已經解決了將ngFor取出離子列表並將其添加到離子卡內容中,而不是在第一個離子列表中。

<!-- SEGMENTOS --> 
<div padding> 
    <ion-segment [(ngModel)]="accion"> 
    <ion-segment-button value="crear"> 
     Crear zona 
    </ion-segment-button> 
    <ion-segment-button value="modificar"> 
     Modificar zona 
    </ion-segment-button> 
    </ion-segment> 
</div> 


<!-- CREAR ZONA --> 
<ion-card center *ngIf="accion=='crear'"> 
    <ion-card-content> 

    <ion-list> 
     <ion-item> 
     <ion-label floating> Nombre del area: </ion-label> 
     <ion-input type="text" [(ngModel)]="nombreArea"> </ion-input> 
     </ion-item> 
    </ion-list> 

    <div padding> 
     <label>Dispositivo asociado:</label> 
     <ion-list> 
     <ion-item *ngFor="let dispositivo2 of dispositivosAnadir"> 
      <ion-label> {{dispositivo2.name}} </ion-label> 
      <ion-checkbox color="royal" [(ngModel)]="dispositivo2.selected" value="dispositivo2.value"></ion-checkbox> 
     </ion-item> 
     </ion-list> 
    </div> 

    <div padding> 
     <button (click)="marcarTodos()" ion-button icon-left color="royal"> 
     <ion-icon name="checkmark-circle"></ion-icon> Marcar todos 
     </button> 
     <button (click)="desmarcarTodos()" ion-button icon-left color="royal"> 
     <ion-icon name="radio-button-off"></ion-icon> Desmarcar todos 
     </button> 
    </div> 

    <div padding> 
     <button (click)="startShape()" [disabled]="pintando" ion-button icon-left color="royal"> 
     <ion-icon name="brush"></ion-icon> Pintar zona 
     </button> 
     <button (click)="endShape()" [disabled]="!pintando" ion-button icon-left color="royal"> 
     <ion-icon name="flag"></ion-icon> Fin pintar zona 
     </button> 
     <button (click)="cancelShape()" [disabled]="!pintando" ion-button icon-left color="royal"> 
     <ion-icon name="close"></ion-icon> Cancelar 
     </button> 
    </div> 

    </ion-card-content> 
</ion-card> 


<!-- MODIFICAR ZONA --> 
<ion-card center *ngIf="accion=='modificar'"> 
    <ion-card-content> 

    <ion-list> 
     <ion-item> 
     <ion-label>Seleccionar zona: </ion-label> 
     <ion-select [(ngModel)]="zonasSelector.seleccionada" (ionChange)="cambioZonaSeleccionada()"> 
      <ion-option *ngFor="let zona of zonasSelector.array" [value]="zona.value">{{zona.name}}</ion-option> 
     </ion-select> 
     </ion-item> 
    </ion-list> 

    <ion-list> 
     <ion-item *ngFor="let dispositivo of dispositivosModificar"> 
     <ion-label> {{dispositivo.name}} </ion-label> 
     <ion-checkbox color="royal" [(ngModel)]="dispositivo.selected" value="dispositivo.value" [disabled]="zonasSelector.seleccionada == null"></ion-checkbox> 
     </ion-item> 
    </ion-list> 

    <div padding *ngIf="accion=='modificar'"> 
     <button ion-button icon-left (click)="modificarZona()" [disabled]="zonasSelector.seleccionada == null" color="royal"> 
     <ion-icon name="checkmark"></ion-icon> Modificar 
     </button> 
     <button ion-button icon-left (click)="showConfirmDelete()" [disabled]="zonasSelector.seleccionada == null" color="royal"> 
     <ion-icon name="trash"></ion-icon> Eliminar 
     </button> 
    </div> 

    </ion-card-content> 
</ion-card>