function Greeting(props){
return <h1>{props.name}</h1>;
}
var name = "Henok";
setTimeout( () => {name="Rahel";},2000);
ReactDOM.render(<Greeting name={name} />, document.getElementById('root'));
Насколько я знаю, компоненты React обновляют крюк жизненного цикла, когда реквизит, переданный ему, изменен или его состояние изменилось. Несмотря на то, что я сменил имя на Рахеля, я не мог видеть сообщение Rahel в браузере?
Насколько я знаю, компоненты React обновляют крюк жизненного цикла, когда реквизит, переданный ему, изменен или его состояние изменилось.
Хенок, похоже, что вы меняете стоимость вне React! Вы можете сделать что-то вроде этого:
class Greeting extends Component{
state ={
name: 'henok'
}
componentDidMount(){
setTimeout(()=> this.setState({name:'Rachel'}), 3000)
}
render(){
const {name} = this.state;
return(<p>Hello {name} </p>);
}
}