angular - 在 primeNG 焦点上未触发 completeMethod 事件
问题描述
我正在尝试在我的应用程序中使用自动完成组件。HTML 中的自动完成功能如下所示:
<p-autoComplete [(ngModel)]="student" name="basic"
[suggestions]="filteredStudents"
(completeMethod)="filterStudents($event)"
field="name" [size]="30"
placeholder="Select student" [minLength]="0">
</p-autoComplete>
如果您注意到我已将“minLength”指定为 0。这样做的需要是在我专注于自动完成输入字段(当然未过滤)时尝试加载建议。但不幸的是,这并没有发生。有趣的是,当我输入一些字符并清除它们时,建议会按预期显示。我在这里可能做错了什么?
请注意,我还尝试使用也不起作用的“onFocus”事件。
TIA
解决方案
使用handleDropdownClick()
可以用作解决方法。
<p-autoComplete #ac [(ngModel)]="student" name="basic"
[suggestions]="filteredStudents"
(onFocus)="triggerOverlayPanel(ac)"
(completeMethod)="filterStudents($event)"
field="name" [size]="30"
placeholder="Select student" [minLength]="0">
</p-autoComplete>
ts 文件。
AutoComplete ref 触发器handleDropdownClick()
就像用户单击下拉菜单并作为参数添加自我一样。
triggerOverlayPanel(ac: AutoComplete){
// condition added to check if no chars need to display result
if(ac.minLength === 0) {
ac.handleDropdownClick(ac);
}
}
推荐阅读
- reactjs - MouseEvent 目标类型
- ios - UITextField 崩溃撤消键盘图标
- android - 当 wifi 不可用但蜂窝数据在三星设备上时,ContentResolver requestSync 不会触发 SyncAdapter onPerformSync
- python-3.x - 如何摆脱多余的括号、引号或逗号 Python
- c++11 - 是什么导致了这段代码中的内存泄漏?
- typo3 - TYPO3 找不到 TypoScript 模板 - 自定义页面
- javascript - Google Maps Javascript API 在生产中抛出 InvalidKeyMapError
- django - 如何在 django 视图文件中打印数据?
- python-3.x - 在python中合并多个zip文件
- python - 如何用 plotly 绘制离散颜色