Реактивное изменение состояния редукса не обновляется (в поле зрения?) [Новичок] - PullRequest
1 голос
/ 10 ноября 2019

Я недавно начал реагировать / реагировать на родную. Я создаю простое приложение-счетчик, чтобы привыкнуть к библиотекам (используя hooks, redux, immutable.js), и теперь я отчаянно застрял, поскольку «значение счетчика» не обновляется (или, может быть, просто представление неполучить заново?)

На верхнем уровне:

const store = createStore(reduce)

const App = () => {
  return (
    <Provider store={store}>
      <AppContainer />
    </Provider>
  )
}

Мой редуктор: (у меня есть модульный тест для обновлений состояния, которыйпроходит, поэтому я думаю, что эта часть на самом деле не является проблематичной? :))

const initialState = fromJS({ counter: 0 })

export default function reduce (state = initialState, action) {
  switch (action.type) {
    case 'INCREMENT':
      return state.update('counter', counter => counter + 1)
    default:
      return state
  }
}

export function selectCounter (state) {
  return state.get('counter')
}

Мой экран выглядит следующим образом

const HomeScreen = () => {
  const count = useSelector(selectCounter)
  const dispatch = useDispatch()

  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Counter: {count}</Text>
      <Button title='test' onClick={() => dispatch({ type: 'INCREMENT' })} />
    </View>
  )
}
export default HomeScreen

Я был бы глубоко признателен, еслиКто-нибудь может объяснить мне, что я делаю здесь неправильно!

РЕДАКТИРОВАТЬ Я понял: я использовал #onClick вместо #onPress внутри моей кнопки ...

...