您现在的位置是:网站首页> 编程资料编程资料

react实现数据监听方式_React_

2023-05-24 317人已围观

简介 react实现数据监听方式_React_

react 数据监听

监听组件传递的值:

 componentWillReceiveProps(newProps)  {      参数为给组件传递的参数  }

 监听组件内部状态的变化:

componentDidUpdate(prevProps,prevState){     参数分别为改变之前的数据状态对象     if(prevState.属性名!=this.state.属性名)     {         ...     } }

react事件监听三种写法

方式一

在constructor中使用bind绑定,改变this的指向

import React, { Component } from 'react';   export default class Group extends Component {   constructor(props) {     super(props);     this.state = {       show: true,       title: '大西瓜'     };     // 写法一:事件绑定改变this指向     this.showFunc = this.showFunc.bind(this);   }   // 调用该方法   showFunc() {     this.setState({       show: false     });   }   render() {     let result = this.state.show ? this.state.title : null;     return (       
                {result}      
    );   } }

方式二

通过箭头函数改变this指向

import React, { Component } from 'react';   export default class Group extends Component {   constructor(props) {     super(props);     this.state = {       show: true,       title: '大西瓜'     };   }   // 第二种,通过箭头函数改变this指向   showFunc = () => {     this.setState({       show: false     });   };   render() {     let result = this.state.show ? this.state.title : null;     return (       
                {result}      
    );   } }

方式三

直接使用箭头函数改变this的指向

import React, { Component } from 'react';   export default class Group extends Component {   constructor(props) {     super(props);     this.state = {       show: true,       title: '大西瓜'     };   }   // 调用该方法   showFunc() {     this.setState({       show: false     });   }   render() {     let result = this.state.show ? this.state.title : null;     return (       
                {result}      
    );   } }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

-六神源码网