динамический селектор параметров ngrx - PullRequest
0 голосов
/ 28 сентября 2019

Я немного борюсь здесь, у меня есть следующий селектор

export const selectMoMenuInfoByIdDynamic = createSelector(
selectMoMenuState,
state => (meId: string) => {
let currentMenu: MoMenu
console.log(state.MoMenuItems)
currentMenu = state.MoMenuItems.find(element => {
return element.ME_ID === meId
})
return currentMenu
}
)

, но я не могу заставить его работать, когда я вызываю его с

const moMenu = this.store.pipe(
select(selectMoMenuInfoByIdDynamic),
map(res => res(meId))
)
console.log(moMenu)

Любая идея для меня?

Будет огромная помощь Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 28 сентября 2019

Хо, я просто тупо забыл сделать подписку после выбора моего селектора ....

0 голосов
/ 28 сентября 2019

Существует несколько способов создания параметризованного селектора, каждый из которых имеет свой вариант использования.Смотрите мой пост Параметризованные селекторы для получения дополнительной информации.

export const getCount = () => createSelector(
  getCounterValue,
  (counter, props) => counter * props.multiply,
)

// in components:

this.counter = this.store.pipe(select(fromRoot.getCount, { multiply: 2 }))

export const selectCustomer = (id: string) =>
  createSelector(
    selectCustomers,
    customers => customers[id],
  )

// in component

this.customer = store.pipe(select(customers.selectCustomer('47')))
...