Javascript 如何使用条件setState并将该值赋给React Native中的另一个组件?

Javascript 如何使用条件setState并将该值赋给React Native中的另一个组件?,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我现在正在使用React Native,我想确定setState内部的条件。在那个次操作之后,我想将该值赋给另一个类,并更改该类内部的文本 首先,当我按下按钮时,我想确定isLightOn值并将其更改为true和false之间的值 这是我的密码: class LightButton extends Component { state = { isLightOn: false } render() { return(

我现在正在使用React Native,我想确定setState内部的条件。在那个次操作之后,我想将该值赋给另一个类,并更改该类内部的文本

首先,当我按下按钮时,我想确定isLightOn值并将其更改为true和false之间的值

这是我的密码:


class LightButton extends  Component {

    state = {
        isLightOn: false
    }

    render() {
        return(
            <View style={styles.red} >

                <LightBulb> </LightBulb>
          <Button
           title="Turn light on"
           onPress={() => { this.setState({isLightOn:true}) }}
          />
            </View>

        );
    }
} 

类LightButton扩展组件{
状态={
伊斯莱顿:错
}
render(){
返回(
{this.setState({isLightOn:true}}}
/>
);
}
} 
之后,我想在另一个类中使用该isLightOn值。根据该值,将有一些文本从关闭变为打开或从打开变为关闭

这是我的第二节课:

class LightBulb extends Component {
    render() {
        return (

            <View style={styles.green} >

                <Text> OFF </Text>

            </View>

        );
    }
}

class灯泡扩展组件{
render(){
返回(
关
);
}
}

如何使用setState()更改数据并将数据传递给另一个类

按下按钮时,使用以下表达式获取isLightOn状态值:
this.setState({isLightOn:!this.state.isLightOn})

然后需要将状态传递给灯泡组件

最后,您应该有条件地呈现组件:

class LightButton extends  Component {

    state = {
        isLightOn: false
    }

    render() {
        return(
            <View style={styles.red} >

                <LightBulb isLightOn={this.state.isLightOn}> </LightBulb>
          <Button
           title="Turn light on"
           onPress={() => { this.setState({isLightOn: !isLightOn}) }}
          />
            </View>

        );
    }
} 
class LightButton扩展组件{
状态={
伊斯莱顿:错
}
render(){
返回(
{this.setState({isLightOn:!isLightOn}}}
/>
);
}
} 
class灯泡扩展组件{
render(){
返回(
{this.props.isLightOn
?
关
:
在…上
}
);
}
}

看起来您面临3个小问题:,和
class LightBulb extends Component {
    render() {
        return (

            <View style={this.props.isLightOn ? styles.green : styles.red} >

                {this.props.isLightOn 
                  ?
                    <Text> OFF </Text>
                  :
                    <Text> ON </Text>
                }

            </View>

        );
    }
}