我们可以使用带有对象属性的 [(ngModel)] 指令吗? [英] Can we use a [(ngModel)] directive with an object property?

查看:25
本文介绍了我们可以使用带有对象属性的 [(ngModel)] 指令吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用如下对象:

I'm trying to use an object like the following:

  private userInfo: IUser;


export interface IUser {
  userId: string;
  email: string;
  photoUrl?: string;
  displayName: string;
  location?: string;
  bio?: string;
  intDestination?: string[];
  dateOfBirth?: any;
  education?: string;
  gender?: string;
  userSetting?: {turnOnNotify: boolean};
}

    <ion-card color="light">
      <p>{{userInfo?.displayName}}</p>
      <input size="70" ngx-google-places-autocomplete [options]='options' [(ngModel)]="userInfo.location" #placesRef="ngx-places"
        (onAddressChange)="handleCityChange($event)" />
    </ion-card>

但是 ngModel 不喜欢 .标识对象属性的符号

But the ngModel doesn't like the . notation identifying the object property

core.js:6241 ERROR TypeError: Cannot read property 'location' of undefined
    at ProfilePage_Template (template.html:28)

有没有办法在 ngModel 中使用对象的属性?

Is there a way to use the object's property in ngModel?

推荐答案

这是因为 userInfo 是私有的,如果你想访问 Html 上的 userInfo 需要公开.

this is because userInfo is private, if you want access userInfo on Html it need be public.

 userInfo: IUser;

这篇关于我们可以使用带有对象属性的 [(ngModel)] 指令吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆