Упорядочение массива allIds с редуктором срезов - PullRequest
0 голосов
/ 20 января 2019

У меня следующая структура:

{
  todos: {
    byId: {
      123456: {
        id: 123456,
        text: "Hello World",
        dateTime: "2019-01-21T06:15:53.300Z"
      },
      ...
    },
    allIds: [123456, ...]
  }
}

Затем я использую редуктор среза, как описано здесь .

const byId = createReducer({})({
  [ADD]: (state, { payload }) => ({
    ...state, [payload.id]: payload
  })
})

const allIds = createReducer([])({
  [ADD]: (state, { payload }) => [ 
    ...state, payload.id
  ]
})

export default combineReducers({ byId, allIds })

Как бы вы обработали заказ по дате здесь?Поскольку редуктор allIds получает только состояние (массив) и новый добавленный объект с его датой.

На веб-сайте, указанном выше, просто сказано "Массивы идентификаторов должны использоваться для указания порядка".

Я могу, например, сделать новую запись в состоянии с именем orderedTodoIds, но тогда приведенное выше предложение неверно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...