2015-12-06 14 views
6

Voglio provare ionico/angolare 2 e non riesco a capire come creare un modulo. Come posso fare questo?Come creare un modulo in ionico 2

+0

Come diavolo è questa domanda fuori tema? StackOverflow sembra determinato a rendersi inutilizzabile – user872985

+0

La domanda è "Come creo un modulo in Ionic/angular 2". Questa è una bella domanda. La sezione che richiede un tutorial potrebbe essere ignorata se è così contro le regole. – user872985

risposta

23

Per iniziare, assumiamo un semplice caso di creazione di un modulo di accesso.

  • forma:

    • (ingresso) nome utente

    • (ingresso) la password

    • (pulsante) login

Il file .html:

 <form [ngFormModel]="loginForm" (submit)="login($event)"> 
      <ion-input stacked-label> 
       <ion-label>Username</ion-label> 
       <input type="text" ngControl="username"> 
      </ion-input> 

      <ion-input stacked-label> 
       <ion-label>Password</ion-label> 
       <input type="password" ngControl="password"> 
      </ion-input> 

      <div padding> 
       <button block type="submit" [disabled]="!loginForm.valid">Login</button> 
      </div> 
     </form> 

Nel file .js:

import {FormBuilder, Validators} from 'angular2/common'; 

export class LoginPage { 

    constructor(form: FormBuilder) { 
    // Create a new form group 
    this.loginForm = form.group({ // name should match [ngFormModel] in your html 
     username: ["", Validators.required], // Setting fields as required 
     password: ["", Validators.required] 
    } 

    // This is called on form submit 
    login(event) { 
    console.log(this.loginForm.value) // {username: <usename>, password: <password> } 
    event.preventDefault(); 
    } 

} 

Reference

+0

Ho scoperto che per qualche motivo questa soluzione non funziona con gli elementi '. L'etichetta è invisibile, l'input non ha bordi e il pulsante di invio non viene abilitato quando l'utente immette i valori nel modulo. Senza gli elementi, la soluzione funziona bene. –

+0

hey @PhilD. sei venuto più avanti su questo problema? Sto vivendo lo stesso – divramod

+0

@divramod Non ho provato a farlo funzionare con '' dal mio commento. Ha funzionato senza di esso e non ne so abbastanza di "etichetta impilata" per voler approfondire ulteriormente. –

Problemi correlati