鍍金池/ 問答/HTML/ reactjs組件傳遞值的問題

reactjs組件傳遞值的問題

參照示例寫了一個react的高階組件demo
內(nèi)容如下
wrapWithUsername

import React from 'react';

export default (WrappedCompoennt) => {

    class ArticleInfo extends React.Component {
        constructor(props) {
            super(props);
            this.state = {
                username: '',
            };
        }

        componentWillMount() {
            let username = "張三豐李逍遙";
            this.setState({
                username: username,
            });
        }

        dellClick(num) {
            if (num === 1) {
                console.log('張三豐');
            }else {
                console.log('李逍遙');
            }
        }

        render() {
            return (
                <div>
                    <WrappedCompoennt username={this.state.username} isClick={this.dellClick}/>
                </div>
            );
        }
    }

    return ArticleInfo;
};

welcome

import React from 'react';
import wrapWithUsername from './wrapWithUsername';

class Welcome extends React.Component {
    render() {
        return (
            <div>
                Welcome {this.props.username}
                <button onClick={this.props.isClick(1)}>張三豐</button>
            </div>
        );
    }
}

export default wrapWithUsername(Welcome);

goodbye

import React from 'react';
import wrapWithUsername from './wrapWithUsername';
class Goodbye extends React.Component {
    render() {
        return (
            <div>
                goodbye {this.props.username}
                <button onClick={this.props.isClick(2)}>李逍遙</button>
            </div>
        );
    }
}

export default wrapWithUsername(Goodbye);

我想在welcomegoodbye組件里調(diào)用高階組件的事件,但是點擊不了這個要怎么弄

回答
編輯回答
吢涼

<button onClick={this.props.isClick.bind(this, 2)}>李逍遙</button>

2018年9月18日 13:36