Я получаю следующую ошибку, когда пытаюсь использовать функцию «connect »act-redux:
"TypeError: react__WEBPACK_IMPORTED_MODULE_4___default.a.memo is not a function"
Также есть следующие детали:
wrapWithConnect
C:/.../node_modules/react-redux/es/components/connectAdvanced.js:325
322 | } // If we're in "pure" mode, ensure our wrapper component only re-renders when incoming props have changed.
323 |
324 |
> 325 | var Connect = pure ? React.memo(ConnectFunction) : ConnectFunction;
| ^ 326 | Connect.WrappedComponent = WrappedComponent;
327 | Connect.displayName = displayName;
328 |
Я не нашел ссылки на эту ошибку в связи с моей проблемой ..
Это код, который я использовал с «connect» в конце класса «Chat.js»:
import { connect } from 'react-redux';
...
const mapStateToProps = state => ({
...state
});
const mapDispatchToProps = dispatch => ({
addMessage: () => dispatch(addMessage)
});
export default connect(
mapStateToProps,
mapDispatchToProps
)(Chat);
Эта кодировка используется в классе под названием "Chat.js", при использовании "Экспорт по умолчанию Чат" без избыточного "подключения" все в порядке.
Я использовал тег провайдера в качестве оболочки для компонента чата в «App.js»:
import { Provider } from 'react-redux';
const App = class extends React.PureComponent {
render() {
const { title } = this.context;
return (
<div className="center-screen">
{title}
<Provider store={configureStore()}>
<Chatroom />
</Provider>
</div>
);
}
};
Действие:
export function addMessage(text) {
return { type: 'addMessage', text };
}
Разбавление:
export default (state, action) => {
switch (action.type) {
case 'addMessage':
return {
text: action.text
};
default:
return state;
}
};