Как добавить данные на передний план с помощью Redux-toolkit

#react-native #redux #redux-toolkit

#реагировать-родной #redux #redux-toolkit

Вопрос:

Окружающая среда

реагировать-родной https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz
redux-toolkit 1.4.0

Код

существует такой код, как Slice, я создаю подобное приложение для чата, кстати.
(на странице сообщений прокрутите страницу вверх и извлеките старые сообщения, как в обычном приложении для чата)

 export const messageSlice = createSlice({
  name: key,
  initialState,
  reducers: {},
  extraReducers: (builder) => {
    builder
      // fetch messages by ajax
      .addCase(fetchMessages.fulfilled, (state, action) => {
        adapter.addMany(state, action.payload.messages);
      })
  },
});

 

теперь, если есть данные [4,5,6], извлеките данные сообщений с сервера [1,2,3]. Результатом будет [4,5,6,1,2,3] при использовании «addMany ()».

Есть другой способ, которым данные будут [1,2,3,4,5,6] с помощью метода redux toolkit? или, если вы просто знаете другой способ, даже если это не метод redux toolkit, пожалуйста, запишите его.

Ответ №1:

Как правило, entityAdapter не заботится о порядке — и поэтому все просто добавляется в конце. Вы можете использовать sortComparer хотя, чтобы отсортировать идентификаторы.

 const itemsAdapter = createEntityAdapter({
  selectId: (item) => item.id,
  sortComparer: (a, b) => a.id-b.id,
})
 

Комментарии:

1. ты спас мне жизнь 🙂