如何访问子属性的布尔值"已检查"在ReactJS中?

时间:2016-07-01 13:41:22

标签: reactjs material-ui react-dom

我想访问child' s属性的布尔值"已检查"在ReactJS中。现在我有以下渲染方法。

Class LoginCard.js

render() {
    return (
        <Card style={styles.card}>
            <UserIcon/>
            <UPSection ref="inputs" updateUName={this.updateInputState_Username} updatePWord={this.updateInputState_Password}/>
            <RememberMe ref="RemMeChk"/> //This conponent containing the checkbox.
            <LoginBtn onClick={this.handleLoginBtnClicked}/>
        </Card>
    );
}

我想在组件checked中获取bool RememberMe值。以下显示了RememberMe的呈现方法。

班级RememberMe.js

render() {
    return (
        <div style={styles.div}>
            <Checkbox ref="rm" label="Remember Me" labelStyle={styles.text} />
        </div>
    );
}

组件Checkbox来自Material UI,其属性为checked。我尝试在类LoginCard中使用var isRemMeChked = ReactDOM.findDOMNode(this.refs.RemMeChk.refs.rm).checked;来访问bool值,但它是未定义的。访问bool值的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

获取RememberMe.js中的值

<强> RememberMe.js

getValue() {
   return this.refs.rm.checked;
}
render() {

    return (
        <div style={styles.div}>
            <Checkbox ref="rm" label="Remember Me" labelStyle={styles.text} />
        </div>
    );
}

登录卡         getValue(){              return this.refs.RemMeChk.getValue()         }     render(){

    return (
        <Card style={styles.card}>
            <UserIcon/>
            <UPSection ref="inputs" updateUName={this.updateInputState_Username} updatePWord={this.updateInputState_Password}/>
            <RememberMe ref="RemMeChk"/> //This conponent containing the checkbox.
            <LoginBtn onClick={this.handleLoginBtnClicked}/>
        </Card>
    );
}