2016-07-16 8 views
0

イオン2プロジェクトでAngular 2を使い始めました。私もユーザー名とパスワードを入力してはconsole.logにパスワードを使用してデータにアクセスしようとすると、私はオブジェクトにAngular 2 ngModel returned [object]

export class LoginPage { 
    user: User; 
    local: Storage; 
    loginData = { Email: null, Password: null}; 

    login() { 
    console.log(this.loginData); 
    } 
} 

を持っているバックエンドで

<ion-list> 
    <ion-item></ion-item> 
    <ion-item> 
     <ion-label fixed>Email</ion-label> 
     <ion-input [(ngModel)]="loginData.Email" type="text" value=""></ion-input> 
    </ion-item> 
    <ion-item> 
     <ion-label fixed>Password</ion-label> 
     <ion-input [(ngModel)]="loginData.Password" type="password"></ion-input> 
    </ion-item> 
    </ion-list> 

:私はシンプルなログインフォームを持っています同じことでthis.loginData.Password = String(this.loginData.Password);結果のようなものをしようと

Object {Email: "email - removed", Password: "[object Object]"} 

:として表示されます。

これもconsole.log(JSON.stringify(this.loginData.Password));

+0

console.log( 'logindata'、this.loginData.Email、this.loginData.Password)を試してください。 –

+0

それは私に '[オブジェクトオブジェクト]' – Jhorra

+0

を返します。配列を返しています。わからない理由は何かconsole.log( 'logindata'、this.loginData.Password [0]) –

答えて

1

問題がngModelが引数として補間を受け入れていないことである同じ事になります。

ngModel Documentation

あなたのコードは次のようになります。これがうまく動作するようです

<ion-input [(ngModel)]="loginData.Password" type="password"></ion-input> 

<input type="text" [(ngModel)]="loginData.Email" > 


<input type="password" [(ngModel)]="loginData.Password" > 

<button (click)="login()">login</button> 

はログイン:

loginData = { Email:null, Password: null}; 

login() { 
    console.log(this.loginData); 
} 
+0

私には見えないものがない限り、私の見た目はまさにそうです。 – Jhorra

+0

あなたの質問を編集したので、覚えていますか?それはまだ働いていないのですか? –

+0

私はちょうどそれを働かせました、何らかの理由で、オブジェクトの代わりに値を別々に置くと、突然それが働き始めました。 – Jhorra

-1

私は見つけることができましたa回避策。私はなぜこれが動作するのか分からないのですが、値をこのように保存すると、

Email: string; 
    Password: string; 

オブジェクトにはうまくいきません。

+0

[このplunker](http://plnkr.co/edit/LGkhWPQq0WSsi6Aumo2v?p=preview)では、元のコードが正しく動作していることがわかります( 'loginData'オブジェクトを使っても)。 – sebaferreras

+0

私は知らない私はアプリケーションからこのコードをコピーしました。すべてのアカウントで動作するはずです。私はAngular 1アプリをたくさん作っていますが、これは十分に近いので、うまくいくはずでした。その結果を教えてください。 – Jhorra

関連する問題