angular - 将 [(ngModel)] 绑定到未定义的值
问题描述
我有以下 [(ngModel)] 导致错误,因为我没有从后端获取任何值,
<input type="number"
[(ngModel)]="list.test[0]">
在上面的示例中,我没有从后端获取测试数组的任何值,导致错误提示无法读取未定义的属性 0。
我试过[(ngModel)]="list?.test[0]"
了,但这也没有帮助。
解决方案
ngModel 的 angular 2-way-binding 不支持安全导航操作符?
。
仍然有一个开放的功能请求: https ://github.com/angular/angular/issues/7697
您可以使用此解决方法:
[(ngModel)]="list.test && list.test[0]"
因此,使用 3 个输入,您的代码应如下所示:
<form>
<input type="number" name="item1" [(ngModel)]="list.test && list.test[0]">
<input type="number" name="item2" [(ngModel)]="list.test && list.test[1]">
<input type="number" name="item3" [(ngModel)]="list.test && list.test[2]">
</form>
给每个输入一个单独的名称属性是很重要的。
推荐阅读
- arrays - 将嵌套对象字段合并到 MongoDB 聚合中的单个嵌套数组字段中
- python - 如何结束 Selenium 中的会话并开始新的会话?
- javascript - 如何将其更改为显示分钟而不是秒?
- java - 动画(textView)在片段状态适配器中的片段之间滑动时不断取消
- python - 数字的总和
- python - 全局变量在python中什么都不产生
- vba - 比较 VBA 中的日期值
- http - 通过 http 显示的 Gstreamer 和 hlssink 不起作用
- python - 找到一个集合(具有元素的副本)是python中更大集合的子集
- higher-order-functions - 流氓:函数可以返回函数吗