react组件介绍
简要:
1.创建组件的方法
2.组件的props属性
3.state属性的用法和特点
4.父子组件传值
5.兄弟组件传值
1.创建组件的方法
组件的创建有两种方法:函数组件和类组件
(1)函数组件
import React from 'react';//定义一个react组件
function App() {
return (
<div>
hello React...
</div>
);
}
export default App;
(2)class组件
import React from 'react';
//定义一个React组件
class App extends React.Component{
render(){
return (
<div>
Hello,Reactjs!!
</div>
);
}
}
export default App;
2.组件的props属性
props属性的特点
1.每个组件对象都会有props(properties的简写)属性
2.组件标签的所有属性都保存在props中
3.内部读取某个属性值:this.props.propertyName
4.作用:通过标签属性从组件外 向组件内传递数据
5.对props中的属性值进行类型限制和必要性限制
3…state属性的用法和特点
1.用法
import React from 'react';
import ReactDOM from 'react-dom';
class Person extends React.Component{
//构造方法
constructor(){
super();
this.state = {
name: 'tom'
}
}
render(){
//state属性是可修改的
this.state.name = 'jack';
return (
<h1>{this.state.name}</h1>
);
}
}
ReactDOM.render(<Person />, document.getElementById('root'));
2.特点
值可以修改
值是组件私有的
4.父子组件传值
1.父组件给子组件传值 :通过props属性来实现的,
父组件代码:
import React from 'react';
import React from './Son'
class Father extends React.Component{
render (){
return(
<React.Fragment>
<Son an='hello son'></Son>
</React.Fragment>
)
}
}
export default Father;
子组件代码
import React from 'react';
class Son extends React.Component{
render (){
return(
<React.Fragment>
{this.props.an}
</React.Fragment>
)
}
}
export default Father;
2.子组件给父组件传值
主要内容:
在父组件中声明一函数,用于接收子组件的传值
通过组件属性的方法,把函数传递给子组件
父组件代码:
import React from 'react';
import React from './Son'
class Father extends React.Component{
//声明一个函数,接收子组件传过来的值
getSon(an){
document.write('子组件传过来的值:'+an)
}
render (){
return(
<React.Fragment>
<Son active={this.getSon}></Son>
</React.Fragment>
)
}
}
export default Father;
子组件代码
import React from 'react';
class Son extends React.Component{
render (){
return(
<React.Fragment>
{this.active('hello father')}
</React.Fragment>
)
}
}
export default Father;
5.兄弟组件传值
前提:兄弟组件之间传值需要借助父组件进行传值,通过子传父然后父传子,来实现兄弟之间的相互传值
子组件1(第一个子组件)
import React from 'react';
class Son extends React.Component{
sonClick(){
this.props.sons('我是Son');
}
render(){
return (
<React.Fragment>
<button onClick={this.sonClick.bind(this)}>Son组件中的按钮获取数据</button>
</React.Fragment>
);
}
}
export default Son;
子组件2(第二个子组件)
import React from 'react';
class Son2 extends React.Component{
render(){
return(
<React.Fragment>
{this.props.mess}
</React.Fragment>
)
}
}
export default Son2;
父组件代码(中介)
import React from 'react';
//引入Son组件
import Son from './Son';
//引入Son2组件
import Son2 from './Son2';
class Father extends React.Component{
//构造函数声明state属性
constructor(){
super();
this.state = {
msg:''
}
}
//用于接收Son.js组件的数据函数 获取子组件传过来的值
sondata(msg){
this.setState({
message:msg
});
}
render(){
return (
<React.Fragment>
<h1>在Father组件中显示:</h1>
<Son sons={this.sondata.bind(this)}></Son>
<Son2 mess={this.state.message}></Son2>
</React.Fragment>
);
}
}
export default Father;
(以上内容是对组件的一些总结,给大家简单的分享一下,可以留下你们的评论继以修改)