Redux Call 2 Диспетчер возвращает неопределенный - PullRequest
0 голосов
/ 30 января 2019

это простое приложение-редуктор для показа сообщений и задач, когда я вызываю диспетчерское действие SHOW_POSTS работает хорошо, но SHOW_TODOS возвращает неопределенное значение, почему?

let initialState = {
      todos : ['buy milk', 'write code'],
      posts : ['weekly news']
    }


    function counter(state = initialState, action) {
      switch (action.type) {
        case 'SHOW_POSTS':
          return state.posts
          break;
        case 'SHOW_TODOS':
          return state.todos
          break;
        case 'ADD_TODO':
          return {
            todos: [...state, action.payload]
          }
          break;
        default:
          return state
      }
    }    

    let store = createStore(counter)

    store.subscribe(() => console.log(store.getState()))

    console.log('show posts:')
    store.dispatch({ type: 'SHOW_POSTS' })

    console.log('show todos:')
    store.dispatch({ type: 'SHOW_TODOS' })

1 Ответ

0 голосов
/ 30 января 2019

Вы должны вернуть все состояние ваших редукторов, поскольку оператор return заменит следующее значение state.По сути, здесь вы заменяете initialState на posts.Вы можете увидеть это, вернув эти диспетчерские вызовы.Вы увидите, что posts будет пустым.

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