我正在使用ngrx路由器存储和序列化程序将所有参数存储到我的状态
router: {
state: {
params: {
param1: 'value1'
param2: 'value2'
}
}
}
所以,如果我订阅
this.store.pipe(select(state.router.state.params)).subscribe((store: any) => {})
每当我更改参数时,它就会触发。
我的问题是,即使我取消订阅ngDestroy(),它也会在销毁之前运行并且我不希望
this.store.pipe(select(state.router.state.params), take(1)).subscribe((store: any) => {})
如果我使用take(1),我的问题就解决了,但是现在我又遇到了另一个问题。如果我使用更改后的参数来保持相同的组件,则它不会运行,因为我有take(1)。
如何将两者结合起来。如果我使用更改后的参数来保持相同的组件,并且如果我将所有参数都更改为url