为了账号安全,请及时绑定邮箱和手机立即绑定

在Angular中的INPUT元素中使用ngModel中的管道

在Angular中的INPUT元素中使用ngModel中的管道

慕沐林林 2019-07-27 10:03:04
在Angular中的INPUT元素中使用ngModel中的管道我有一个HTML INPUT字段。<input      [(ngModel)]="item.value"      name="inputField"      type="text" />我想格式化它的值并使用现有的管道:.... [(ngModel)]="item.value | useMyPipeToFormatThatValue" ....并收到错误消息:动作表达式中不能有管道在这种情况下如何使用管道?
查看完整描述

3 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

<input [ngModel]="item.value | useMyPipeToFormatThatValue" 
      (ngModelChange)="item.value=$event" name="inputField" type="text" />

这里的解决方案是将绑定拆分为单向绑定和事件绑定 - 语法[(ngModel)]实际包含在内。[]是单向绑定语法,()是事件绑定语法。当一起使用时 - [()]Angular将其识别为速记,并以单向绑定和绑定到组件对象值的事件的形式连接双向绑定。

您不能使用[()]管道的原因是管道仅适用于单向绑定。因此,必须将管道拆分为仅对单向绑定进行操作并单独处理事件。

有关详细信息,请参阅角度模板语法


查看完整回答
反对 回复 2019-07-27
?
慕码人8056858

TA贡献1803条经验 获得超6个赞

<input [ngModel]="item.value | currency" (ngModelChange)="item.value=$event"name="name" type="text" />

我想再接受一个接受的答案。

如果输入控件的类型不是文本,则管道将不起作用。

记住它并节省您的时间。


查看完整回答
反对 回复 2019-07-27
  • 3 回答
  • 0 关注
  • 1908 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信