你可以用主题重复触发角度输入设置器吗?

问题描述 投票:0回答:1

我想触发一个没有值的@Input setter,因此使用RxJS'

Subject()
。 然而,这只发出一次,显然是因为没有值发生改变。

如何在每次就该主题致电

next()
时触发输入?

父组件

fromEvent(window, 'keydown').subscribe((res: KeyboardEvent) => {
  this.save$.next();
});

// HTML
<some-component [save]="(save$ | async)" />

某些组件

@Input() set save() {
  console.log('save'); // only fires one time
}

此设置仅在第一次触发。后续所有时间都不会触发绑定。

编辑:一种方法是每次添加一个新值。

this.save$.next({});

但这违背了问题的目的,只是简单地触发设置器(没有值)

angular rxjs binding
1个回答
0
投票

那么你可以这样做:

fromEvent(window, 'keydown').subscribe(this.save$)
© www.soinside.com 2019 - 2024. All rights reserved.