React-state(状态值)

React-state(状态值)

1.作用:用于存储组件内的数据,是组件的私有属性,不可以通过外部访问和修改,只能在组件内部修改,state内的值修改会触发DOM重新渲染props
2.在组件中的写法:

class MyFirst extends React.Component {
				/*构造器*/
				constructor(props){
					super(props);//调用父类的构造函数   用于初始化props属性
					this.state={
						name:'张三',
						age:18,
						msg:'MyFirst组件'
					}
				}
				render(){
					return (
						<div>
							<h1>{this.state.msg}</h1>
							<p>{this.state.name}</p>
							<p>{this.state.age}</p>
							<p>{this.props.a}</p>
						</div>
					)
				}
			}
			
			ReactDOM.render(
				<MyFirst a='a'/>
				,
				document.getElementById('app')
			)

必须要写到constructor组件构造器中。可以把state看成Vue中的data属性,拥有相同的功能。
在组件内访问state内的值:this.state.属性名

  • 修改state内属性的值:
this.setState({
  ...
})
			class MyFirst extends React.Component {
				/*构造器*/
				constructor(props){
					super(props);//调用父类的构造函数   用于初始化props属性
					this.state={
						name:'张三',
						age:18,
						msg:'MyFirst组件'
					}
				};
				changeAge(){
					this.setState({
						age:19
					})
				};
				render(){
					return (
						<div>
							<h1>{this.state.msg}</h1>
							<p>{this.state.name}</p>
							<p>{this.state.age}</p>
							<p>{this.props.a}</p>
							<button onClick={()=>{this.changeAge()}}>click me change age</button>
						</div>
					)
				}
			}

猜你喜欢

转载自blog.csdn.net/qq_41709082/article/details/84678695