无法获取[(ngModel)]值以在组件Angular 6中使用

时间:2019-01-16 17:00:58

标签: angular typescript angular6 primeng angular-ngmodel

在html文件中,使用ngModel,我想获取其值以在组件中使用

edit-customer.component.html

f x y = intercalate "-" <$> mapM getEnv [x,y]

由于它是双向绑定,因此我在组件中按如下方式使用了它,

edit-customer.component.ts

  <input id="userInfoEmail" type="text" class="form-control" value="{{userInfo.email}}" [(ngModel)]="userInfo.email" disabled>

我也已经声明了checkUserEmail(): void { this.userInfo.email = this.userEmail; this.customerService.checkEmail(this.userEmail).subscribe((res) => { if (res.twoFactorEnabled === true) { this.isButtonDisabled = false; } else { this.isButtonDisabled = true; } }) } ,但是不幸的是我的控制台出现错误“ undefined”,我读到我需要初始化该对象但无法弄清楚它,

2 个答案:

答案 0 :(得分:1)

请勿在ngModel中使用值,请先将其删除,

  <input id="userInfoEmail" type="text" class="form-control" [(ngModel)]="userInfo.email" disabled>

现在您应该可以在控制器中访问值了,

console.log(this.userInfo.email);

而userInfo应该在最上方,

userInfo: any = {}; (如果您更改了类型)

答案 1 :(得分:0)

您也可以做到

ts文件中的一个函数

  get_coin_current_market_value(symbol){
console.log('symbol is ',symbol);

}

和html

 <select class="form-control" name="coin" [(ngModel)]="symbol" 
        (ngModelChange)="get_coin_current_market_value(symbol)">
        <option *ngFor="let coin of allCoinsArray">
               {{ coin.symbol }}
         </option>
 </select>