javascript - 具有多种方法的角度事件
问题描述
使用 ControlValueAccessor 处理自定义输入组件,无法找到有关访问输入值的最佳方式的指导。由于传递 $event 是一种可疑的做法,有没有办法在触发事件时触发两个或多个方法?
<input type='text' (input)="onChange($event.target.value); watchCity($event.target.value)" [disabled]="disabled" (onEnter)="onEnter($event)" (blur)="onTouched()" />
也许有更好的方法从 ControlValueAccessor 组件内部获取值?
解决方案
您拥有的语法应该可以工作,但它不是很常见。
您可以调用一个调用其他两个函数的函数。
HTML
<input type='text'
(input)="onChange($event.target.value)"
[disabled]="disabled"
(onEnter)="onEnter($event.target.value)"
(blur)="onTouched()" />
零件
onChange(value) {
// do whatever else
this.watchCity(value);
}
Stackblitz 在这里:https ://stackblitz.com/edit/angular-9wqhjp
另外,看这里:https ://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement我没有看到onEnter
输入元素的事件?
你提到了一些关于 a 的事情ControlValueAccessor
。你想建一个吗?如果是这样,请查看:https ://alligator.io/angular/custom-form-control/示例。
推荐阅读
- python - GCP IAM:在通过python API创建服务帐户时/之后向服务帐户授予角色
- php - 从 MySQL 服务器上存储为 Blob 的数据创建 UIImage
- android - React native expo open url android web intent
- c# - NUnit Retry 不适用于以下场景
- regex - 如何从模块中导出正则表达式
- python - “索引列表必须是整数,而不是 str”使用 aiohttp 获取 API 图像时
- react-native - 使用 react-navigation 切换身份验证流堆栈时如何重置堆栈
- python - 我无法将大文件上传到运行烧瓶应用程序的 nginx
- google-sheets - 从与另一个单元格的同一行但不同列对应的单元格中检索数值(Google表格)
- mysql - 为什么“有条款”中有未知列