У меня есть ситуация, когда я хочу визуализировать другой заголовок в зависимости от значения переменной в состоянии Redux.
Это мой MyClass.js
class MyClass extends React.Component {
constructor(props) {
this.state = {
headerState: "home"
};
this.GetHeader = this.GetHeader.bind(this);
}
GetHeader() {
const headerType = this.renderHeader;
if (headerType == "a") {
return (Some html code);
} [...] {
return (Some html code);
} else {
return (Some html code);
}
}
render() { <
GetHeader / > // This is line 79
}
function mapStateToProps(state, ownProps) {
return {
renderHeader: state.renderHeader
};
}
}
export default withRouter(connect(mapStateToProps)(MyClass));
Это мой редуктор:
export default function renderHeaderReducer(state = [], action) {
switch(action.type) {
case 'RENDER_HEADER':
return [...state, Object.assign({}, action.headerType)];
default:
return state;
}
}
Когда я попытался запустить код, в браузере написано:
Uncaught ReferenceError: GetHeader не определен в Header.render (Header.js: 79).
Я следовал этому Документ (первый пример)
Не уверен, что я делаю неправильно или какие концепции я неправильно понял в терминах привязки методов к this
контексту. Приветствия.