Я пытаюсь отправить действие на мой ComponentDidMount, но оно никогда не работает.
Ситуация такова: я создал функцию для переключения языка на редуктор, который инициализирует язык в браузереязык.И я хочу изменить язык на первый язык, доступный в моем API, когда я вызываю свой компонент.
Я пробовал много вещей из StackOverflow, и я не понимаю, почему, когда я помещаю свою функцию в рендер(onClick, onScroll) он работает нормально, но на моем componentDidMount это не так.
Вот мой код:
import {switchLanguage} from '../actions/langs'
class Header extends Component {
constructor(props) {
super(props);
this.state = {
langs: langs
};
let switchLanguage = this.props.switchLanguage;
}
componentDidMount() {
switchLanguage(1, 'fr')
}
render() {
[...]
}
}
function mapStateToProps(state) {
return {langId: state.languageReducer.id, language: state.languageReducer.language}
}
function mapDispatchToProps(dispatch) {
return {
switchLanguage: (id, lang) => dispatch(switchLanguage(id, lang))
}
}
Header = connect(mapStateToProps, mapDispatchToProps)(Header);
export default injectIntl(Header);
Я новичок в Redux, я просто следую редукцииучебник для этого.
Может ли кто-нибудь мне помочь?