@webe
frontend

Как правильно передать параметры в reselect?

в store такие ветки:
store: {
    posts: [{ id: '300', name: 'Название поста' }],
    comments: [{ id: '10000', POST_ID: 300, 'title':'Всем привет' }],
  },


Есть контейнер который рендерит через map мои посты.
Мне нужно показать кол-во комментариев напротив каждого поста.



Вообщем у меня вот такие селекторы получились:

export const getAllCommentsSelector = state => state.comments; // берем все комменты
export const getCurrentIDSelector = (state, props) => props.id; //это ID нашей статьи, напомню что вызываем Connect из всех статей
export const getCountByGroupID = createSelector(
  getAllCommentsSelectorSelector,
  getCurrentIDSelector,
  (Comments, ID) => Comments.filter(el => el.POST_ID === ID).length,
); // тут получаем поличество комментариев для статьи



Эти слекоторы я вызываю из каждого поста т.е 20 connect стабатывает

1)Скажите плиз это норм практика или нет?
Есть ли еще варианты ?
Получение ID тут очень костыльное, как я понял я не могу прокинуть никак больше пропсы?

2) Использование Connect на пост это не плохая практика? по сути у меня будет около 100 Connect'ов
  • Вопрос задан
  • 447 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы