美文网首页
react 父组件调子组件的方法

react 父组件调子组件的方法

作者: 魔仙堡杠把子灬 | 来源:发表于2020-09-04 10:33 被阅读0次

    山有木兮木有枝,心悦君兮君不知。

    我的github: 李大玄
    我的私人博客: 李大玄
    我的npm开源库: 李大玄
    我的简书: 李大玄
    我的CSDN: 李大玄
    我的掘金: 李大玄

    通过子组件传过来的组件实例. 父组件在去调用子组件的方法

    父组件

    import React, { Component } from 'react';
    import Login from '@/components/Login';
    import Logout from '@/components/Logout';
    import { Button } from 'antd';
    class Index extends Component {
        state = {
            tableList: [],
        isLogin: true,
        login: '',
        logout: '',
        };
      
      getSonFn = () => {
        this.state.login.getList();
      }
      // 通过子组件传过来的组件实例. 
      onRef = (val, ref) => {
        console.log(val, ref);
        switch (val) {
          case 'login':
            this.state.login = ref
            break;
          case 'logout':
            this.state.logout = ref
            break;
          default:
            break;
        }
      }
        
        render() {
            return (
                <div className="shadow-radius">
            
                    <Button type="primary" onClick={ this.getSonFn } className="mr20">调子组件方法</Button>
                    <Button type="primary" onClick={ this.chageData } className="mr20">子组件给父组件传值</Button>
                    <Login onRef={this.onRef}/>
                <div/>
            );
        }
    }
    
    export default Index;
    

    子组件

    import React from 'react';
    class Login extends React.Component {
      getList = () => {
        console.log('这是子组件');
      }
      componentWillMount() {
        this.props.onRef('login', this);
      }
      render() {
        return <div>login</div>
      }
    }
    export default Login;
    

    相关文章

      网友评论

          本文标题:react 父组件调子组件的方法

          本文链接:https://www.haomeiwen.com/subject/maansktx.html