将输入元素绑定到 Angular 中的 Observable
Bind input element to Observable in Angular
我缺少一些基本的东西。但是我发现的所有类似帖子都包含带有@Input 的解决方案和我没有找到带有简单变量的对象。
所以我有一个包含帖子列表和输入的组件。
这是我的 HTML:
<input placeholder="Enter value that title or body should conain" [(ngModel)]="filterString$" />
这是我的打字稿:
filterString$ = new BehaviorSubject<string>('').asObservable();
this.filterString$.subscribe((filterString) => {
this.filterPosts(filterString);
});
问题是它只触发一次(当然是因为我在 HTML 绑定中遇到了问题)。并输入显示:[object Object]
我的绑定有什么不正确的地方?
我认为您不能将可观察对象绑定到 ngModel 输入。
无论如何你可以做得更简单,例如这样:
<input (ngModelChange)="filterPosts($event)" [(ngModel)]="filterString" />
我缺少一些基本的东西。但是我发现的所有类似帖子都包含带有@Input 的解决方案和我没有找到带有简单变量的对象。
所以我有一个包含帖子列表和输入的组件。
这是我的 HTML:
<input placeholder="Enter value that title or body should conain" [(ngModel)]="filterString$" />
这是我的打字稿:
filterString$ = new BehaviorSubject<string>('').asObservable();
this.filterString$.subscribe((filterString) => {
this.filterPosts(filterString);
});
问题是它只触发一次(当然是因为我在 HTML 绑定中遇到了问题)。并输入显示:[object Object]
我的绑定有什么不正确的地方?
我认为您不能将可观察对象绑定到 ngModel 输入。 无论如何你可以做得更简单,例如这样:
<input (ngModelChange)="filterPosts($event)" [(ngModel)]="filterString" />