状态事件和管理控制
这是一个带有托管输入字段的 React 组件的示例。只要输入字段的值发生更改,就会调用事件处理程序,该事件处理程序使用输入字段的新值更新组件的状态。在事件处理程序中调用 setState
将触发调用 render
更新 dom 中的组件。
import React from 'react';
import {render} from 'react-dom';
class ManagedControlDemo extends React.Component {
constructor(props){
super(props);
this.state = {message: ""};
}
handleChange(e){
this.setState({message: e.target.value});
}
render() {
return (
<div>
<legend>Type something here</legend>
<input
onChange={this.handleChange.bind(this)}
value={this.state.message}
autoFocus />
<h1>{this.state.message}</h1>
</div>
);
}
}
render(<ManagedControlDemo/>, document.querySelector('#app'));
注意运行时行为非常重要。每次用户更改输入字段中的值
handleChange
将被召唤等等setState
将被召唤等等render
将被召唤
在输入字段中键入字符后,弹出测验,哪些 DOM 元素更改
- 所有这些 - 顶级 div,图例,输入,h1
- 只有输入和 h1
- 没有
- 什么是 DOM?
你可以在此处进行更多实验以找到答案