Reactjs 在导入的屏幕中反应本机更改状态

Reactjs 在导入的屏幕中反应本机更改状态,reactjs,react-native,Reactjs,React Native,我想更改音频录制屏幕中的语音录制屏幕值。我该怎么做 {this.state.voiceRecordingScreenVisible==false( ):null} 您可以执行以下操作: // Outside render(), function to set value of voiceRecordingScreenVisible setVoiceRecordingScreenVisible = (value) => { this.setState({voiceRecordingScr

我想更改
音频录制屏幕
中的
语音录制屏幕
值。我该怎么做

{this.state.voiceRecordingScreenVisible==false(
):null}

您可以执行以下操作:

// Outside render(), function to set value of voiceRecordingScreenVisible
setVoiceRecordingScreenVisible = (value) => {
  this.setState({voiceRecordingScreenVisible: value})
}

// inside render()
{
  this.state.voiceRecordingScreenVisible == false ? 
    <View style={{width:100+"%",height:100+"%",position:"absolute",zIndex:20}}>
      <TouchableOpacity style{{width:100+"%",height:100+"%",position:"absolute",backgroundColor:"rgba(0,0,0,0.5)"}}></TouchableOpacity>
      <View style={{width:85+"%",height:75+"%",position:"absolute",top:40,alignSelf:"center"}}>
        <AudioRecordingScreen screenProps={{
           VoiceChatID:this.state.chatID,
           VoiceSenderID:this.state.userID,                          
           VoiceTableName:"messages",      
           VoiceUserToken:this.state.token,

           // pass function to set the value voiceRecordingScreenVisible
           setVoiceRecordingScreenVisible: this.setVoiceRecordingScreenVisible   
        }}/>
       </View>                
     </View> : null 

}
//Outside render(),用于设置voiceRecordingScreenVisible值的函数
setVoiceRecordingScreenVisible=(值)=>{
this.setState({voiceRecordingScreenVisible:value})
}
//内部渲染()
{
this.state.voiceRecordingScreenVisible==false?
:null
}

并在需要时调用AudioRecordingScreen中的函数“setVoiceRecordingScreenVisible”
this.props.screenProps.setVoiceRecordingScreenVisible

您应该使用箭头函数来解决这个问题,比如setVoiceRecordingScreenVisible:(布尔)=>this.setState({voiceRecordingScreenVisible:boolean}),在arrow函数的作用域中,它绑定到创建arrow函数的位置的相同值。参数boolean是传递给arrow函数的值

您的意思是如何在呈现音频录制屏幕的组件状态下更改
语音录制屏幕可见的
值?您是否尝试过
this.setState({voiceRecordingScreenVisible:true})?我尝试了这个.setState({voiceRecordingScreenVisible:true});在AudioRecordingScreen.js中,但不工作