Я написал промежуточное программное обеспечение, например, удар:
const testMiddleware = ({ dispatch, getState }) => next => action => {
console.info('test middleware')
};
export default testMiddleware;
и добавил его в свой магазин: applyMiddleware(testMiddleware) в ever action я получаю test middleware в своей консоли.
и я написал простое действие, например:
export const sayHi = () => {
return dispatch => {
console.info('hi');
}
}
Как я могу отправить действие sayHi в своем промежуточном программном обеспечении?
Я хочу создать собственное промежуточное ПО для себя, работать с getState, но я не могу отправить действие.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Промежуточное ПО получает функции магазина getState() и dispatch() в качестве первого аргумента, поэтому вы можете сделать следующее (после импорта необходимых действий):
const middleware = ({dispatch, getState }) =>{
return next => action => {
dispatch(someAction);
// return data;
return next(action);
}
}
So, the middleware signature is ({ getState, dispatch }) => next => action.
https://redux.js.org/api/applymiddleware
что такое data в return data? я получаю ошибку InternalError: too much recursion
Конечно, вы получаете сообщение об ошибке, потому что данные являются неопределенной переменной, это был просто пример) вы должны вернуть действие, как указано в ссылке
спасибо, я написал как ваш новый ответ, но я получаю ошибку InternalError: too much recursion, пожалуйста, проверьте свой чат.
Вы пытаетесь создать свой собственный
thunkили какое-то специальное промежуточное ПО?