подскажите кто нить. может можно вообще как то добавить санки без redux, я хз
Санки для редакса не работают без редакса. Они для редакса. Хук useReducer не имеет ничего общего с редаксом, кроме концепта. Ответ — никак. Ты можешь написать свои «санки» без редакса, для useReducer. Достаточно разобраться, что это и как оно работает.
Понял, но я прикрепил скрин т.к. не понимаю как мне получить стейт создавая чанки и при этом создавать этот же стейт используя usereducer?
Я не понимаю, что ты имеешь в виду
Я получаю стейт из useReduce и кладу в контекст. Теперь мне нужно создать чанки, для этого я должен объявить стейт используя функцию для создания чанок. Получается у меня два стейта, один из чанок другой из useReduce (на скрине выделил) . Выходит я делаю что то не так. Но что я делаю не так? Т.к. в примерах в основном стор создаётся без useReducer
Функция позволяющая выполнять диспатчи после асинхронных запросов
Санки. Thunk. Не чанки, не chunk
Понял, сори
Напоминает неопытных водителей путающих педали газа и тормоза. Просто представил как лёг сервер 500
Ещё раз. Санки — это концепция из редакса. Ты не пользуешься редаксом, ты пользуешься useReducer. К useReducer никак санки не подключить. useReducer не имеет ничего общего с редаксом
Лёг сервер по тому что я на русском не правильно сказал? Забавно...
как мне быть тогда с асинхронными запросами? выходит мне либо переписывать используюя redux-thunk. либо все асинхронные запросы выполнять ниже useReducer. верно я понимаю?
Использовать стейт-менеджер
я почитаю об этом, спасибо
// Инициализация хранилища function todosReducer(state, action) { switch (action.type) { case 'ADD_TODO': return [ ...state, { id: action.id, text: action.text, completed: false } ] case 'TOGGLE_TODO': return state.map(todo => { if (todo.id === action.id) { return { ...todo, completed: !todo.completed } } return todo }) default: return state } } const initialTodos = [] const store = createStore(todosReducer, initialTodos) // Использование store.dispatch({ type: 'ADD_TODO', id: 1, text: 'Понять насколько redux прост' }) store.getState() // [{ id: 1, text: 'Понять насколько redux прост', completed: false }] store.dispatch({ type: 'TOGGLE_TODO', id: 1 }) store.getState() // [{ id: 1, text: 'Понять насколько redux прост', completed: true }] Вы так реализуете редакс ?
Ещё нативно можно использовать .reduce() на js Там есть масса возможностей, из стандартного, посчитать общее количество всех чисел из массива, получить уникальные значения по ключу и многое другое. React это воспринимает. Может кому пригодится.
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce Ну это как видно из документации по большей части работа с прототипами.
Чувак, завязывай чушь пороть, пожалуйста. Какой-то редьюс, реакт что-то воспринимает.
1. есть некая функция postDefaultDB который выполняет асинхроный запрос после должен выполнить другой action, который изменит состояние state 2. в контейнерной компоненте которая передаёт контекст, я получаю стейт с помощью useReducer 3. я вызываю функцию postDefaultDB проблема: функция которую я вызываю, после асинхроного запроса не может выполнить диспатч т.к. у неё нет метода dispatch, следовательно я просто получаю там объект а не выполнение action
ссылка выше, если не понял о чём я 😉
Я понял, о чем ты. Я не понял, зачем ты это пишешь. Перестань пороть чушь, в последний раз прошу
объясни пожалуйста что такое диспатч? я не понимаю и не знаю, очень кратко)
Обсуждают сегодня