当前位置: 移动技术网 > IT编程>网页制作>CSS > 对react的一些看法和见解(实例)

对react的一些看法和见解(实例)

2018年02月13日  | 移动技术网IT编程  | 我要评论

渲染页面:

react中将功能分割成组件,只关注组件状态(state,props)的变化。所有的操作都是在虚拟dom上,每当组件状态发生变化就生成新的dom数据,然后将上一次的dom跟本次dom进行比较,只将变化的部分更新到真实的dom上。

props和state的区别

state可以用来与用户交互,通过setState({})来更新和修改数据

父子组件的数据传递通过props传递,数据是单向传递的,自顶向下,不要尝试改变props

1.父组件->子组件 通过<Parent title={值}/> Children中通过this.props.title获取

2.子组件->父组件 仍是通过props传递,但传递的是函数,子组件调用该函数即可

生命周期

componentDidMount() 只执行一次,发生在组件已经插入到真实dom中,一般fetch请求写在该方法

componentWillReceiveProps(nextProps) props改变便执行

{某方法}

其中方法中不能使用this.props否则还是获取的上一次数据

注意当props未发生变化时也可能会执行该方法

可在nextProps!==this.props判断里使用该方法

若使用componentWillUpdate等生命周期函数可能会不断执行该方法原因是(在这个方法中你不可以使用setState,否则会触发一轮新的渲染,不断调用componentWillUpdate,陷入无限循环)

该方法通常用在props改变时

this

在react中使用类来声明组件

class 类名 extends React.Component

{  constructor(props){super(props);}

   handleClick(){};

   render(){return <button onClick={this.handleClick}}

}

在react中使用jsx语法所以所有的事件如click,blur首字母大写,

获取this的指向

1.方法若采用类方法,在constructor中写this.handleClick=this.handleClick.bind(this)或者在回调中

onClick={this.handleClick.bind(this)}或onClick={()=>this.handleClick()}

2.方法也可写成箭头函数形式即可,handleClick=()=>{}

方法传参

1.若使用箭头函数写方法,调用时this.方法即可不能写成this.方法()否则页面渲染时就会调用该方法

this.函数.bind(this,参数)

()=>this.函数(参数)

react之jsx语法

1.render中最外层只能有一个HTML标签包裹

2.表达式要用{}包裹

3.react设置组件样式

1.内联

<p style={{color:"gray"}}></p>

2.选择器

const pStyle={color:"gray"}

<p style={pStyle}></p>

3.对象

.pStyle{color:"gray"}

<p className="pStyle"></p>

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网