Я начал создавать собственное приложение и хочу добавить в него избыточность.Я много раз использовал REDEX с React-DOM, и у меня никогда не было проблем.Теперь с реактивно-родным я не могу заставить его работать.
Я запустил очень простое шаблонное приложение, но когда я добавляю connect
HOC к своему компоненту, я получаю следующую ошибку:
Это код для моего компонента:
import React, { Component } from 'react';
import { Provider } from 'react-redux';
import { createStore, combineReducers } from 'redux';
import { connect } from 'react-redux';
import { View } from 'react-native';
const mainReducer = (state = { msg: 'Hello World!' }, action) => {
switch(action.type) {
default: return state;
}
};
const store = createStore(combineReducers({ mainReducer }));
class Main extends Component {
render() {
console.log('props: ', this.props);
return (
<View>{this.props.msg}</View>
);
}
}
const MainWithRedux = connect(state => ({ msg: state.msg }))(Main);
console.log('MainWithRedux: ', MainWithRedux);
export default class App extends Component {
render() {
return (
<Provider store={store}>
<MainWithRedux />
</Provider>
);
}
}
Из console.log я вижу, что connect
hoc действительно возвращаетсяобъект, а не компонент:
Я создал свой проект, используя react-native-create-app
, и это мои зависимости:
"react": "16.6.3",
"react-native": "0.57.4",
"react-redux": "^7.0.2",
"redux": "^4.0.1"
Я что-то пропустил?Как правильно интегрировать реактив-редукс с реактивно-нативным?