Redux принимает только простые JavaScript-объекты для отправки.Промежуточное программное обеспечение Thunk преодолевает это, позволяя вам предоставлять функции для отправки.В этом примере, по сути, вы возвращаете ссылку на функцию для отправки, которая будет выполнена thunk.
как происходит возврат, принимая параметр dispatch?
откуда идет эта отправка, я не передаю ничего, когда вызываю listTodos
Как только thunk встречает функцию, она выполняет эту функцию и передает диспетчеризацию как параметр, так что вы можетеиспользуйте его в функции для фактической отправки (_listTodos (todos)).Так что thunk будет делать что-то вроде этого
if(typeof action === 'function') {
//Reason why it takes a dispatch parameter
//And thunk is the one who sends it to the function
action(dispatch);
}
, где action - это функция, которую вы вернули из вашего listTodos ()
почему мне даже нужен возврат,не следует отправлять действие изнутри, тогда требуется
return, чтобы дать thunk функцию, чтобы она могла выполнить вышеуказанное действие.