angular - 具有异步的角度可观察数组未在退格上过滤
问题描述
在文本框的值更改时,我从服务器获取数据并对其进行过滤。只要我向前输入,它就可以很好地工作,但是当我使用退格键或删除按钮时,(输入)事件确实会触发,但服务器调用没有被执行。
HTML:
<div class="searching" >
<input [readonly]="mode=='EDIT'" formControlName="userNBK" type="text"
class="form-control" (input)="getUserData(f.userNBK);" >
<div *ngIf="showSuggestions == true" (blur)="showSuggestions = false" >
<ul class="suggestionList">
<li *ngFor="let result of aitUsersList | async"
(click)="selectUserOption($event,result)" >
{{result.UserId}} | {{result.FirstName}} {{result.LastName}}
</li>
</ul>
</div>
</div>
TS:
usersList: Observable<any[]>;
getUserData(input: any) {
this.usersList =
this.manageService.getUsers("xyz")
.pipe(
map ((resp: any[]) => {
return resp.filter(u => String(u.UserId).toLowerCase().startsWith(String(input.value).toLowerCase()));
}
));
解决方案
推荐阅读
- javascript - 在javascript中加载div之前的图像
- windows - 特定月份和年份的文件
- gurobi - 已安装 gurobi ,导入时不反映
- css - 页面加载动画在加载时闪烁(缩放变化)
- c# - 将 HTTPClient.ReadAsAsync 结果反序列化为对象列表
- c# - “清除”字符串的 ObservableCollection 时数据绑定不刷新
- llvm-clang - 构建 ebpf 时,我得到“未知目标三重 'bpf',请使用 -triple 或 -arch”
- php - 如何使用 codeigniter 在另一台设备上取消设置会话
- android - 图像没有使用 Glide 缓存
- ruby-on-rails - Factorybot 无法识别任何属性——“方法缺失”错误