Я написал компонент с состоянием chosenGenre
, и внутри него есть функция, которая изменяет состояние в соответствии с нажатой кнопкой.
Я хотел бы принять обновленное состояние (которое string
) и используйте его в другом компоненте.
Это компонент, в котором объявлено состояние:
import React, { Component } from 'react';
import Genre from './Genre';
import './GenreSelectPage.css';
import Blues from '../Blues.png';
import Classical from '../Classical.png';
import Country from '../Country.png';
export default class GenreSelectPage extends Component{
state = {
chosenGenre: ""
}
handleClick = (genreName) => {
this.setState({ chosenGenre: genreName });
}
render() {
return(
<div className = "GenreSelectPage">
<h3>Select your desired Kollab Room Genre</h3>
<Genre genrePicture= {Blues} genreClicked = {()=>this.handleClick("Blues")}/>
<Genre genrePicture= {Classical} genreClicked = {()=>this.handleClick("Classical")}/>
<Genre genrePicture= {Country} genreClicked = {()=>this.handleClick("Country")}/>
</div>
)
}
}
И это новый компонент, для которого я хочу использовать chosenGenre
состояние из GenreSelectPage
компонент:
import React, { Component } from 'react';
import GenreSelectPage from './GenreSelectPage';
export default class InRoomPage extends Component {
render() {
return(
<div className = "InRoomPage">
<p>Welcome to {GenreSelectPage.state.chosenGenre} page</p>
</div>
)
}
}
Что я должен изменить внутри:
<p>Welcome to {GenreSelectPage.state.chosenGenre} room !</p>
Так что это будет работать?