вам нужно создать prop
например createmap:boolean
в Kartta компонент. Теперь в index.js
сначала вам нужно создать состояние, например createmap:boolean
(изначально установлено в false), а после нажатия кнопки Haku вам нужно установить состояние:
this.setState({
creatmap:true;
});
you необходимо включить компонент Katta JSX в index.js
render()
функцию, например
<Kartta createmap = {this.state.createmap} />
Теперь в Kartta компонент на componentDidMount()
вы можете проверить createmap' prop and based on its value call the function
fetchAll () `:
public componentDidMount() {
if(this.prop.createmap) {
fetchAll();
}
}
то, что это будет делать, вызывает рендеринг из-за состояния установки после нажатия кнопки и вызовет функцию fetchAll (), если найдено createMap
true
Надеюсь, это поможет.
РЕДАКТИРОВАТЬ :
Не забудьте использовать ключевое слово export
с классом компонента Kartta , чтобы вы могли импортировать его в index.js
создать JSX
в render()
:
export default class Kartta extends Component { ... }
РЕДАКТИРОВАТЬ 2
В вашем классе компонентов navbar инициализировать state
в конструкторе:
export default class NavBar extends Component {
constructor(props) {
super(props);
this.state: {
createmap: false;
}
}
}
ваш Kartta класс компонентов:
export default class Kartta extends Component {
constructor(props) {
super(props);
}
componentDidMount() {
if(this.props.createmap) {
fetchAll();
}
}