1. 程式人生 > >RN中子元件傳值給父元件

RN中子元件傳值給父元件

父元件與子元件之間的傳值主要分為,父元件向子元件傳值這個比較簡單,第二種是子元件向父元件傳值主要思想是:父元件向子元件傳遞一個函式,父元件傳給子元件一個函式 然後將要傳的值作為函式的引數返回給父元件

//父元件

class Test extends Component {

constructor(props) {

super(props)

this.state = {

flags: 1

}

}

_onPressButton(a) {//傳給子元件的函式

this.setState({

flags: a

})

}

render() {

return (

<View>

<Biaoti navigation={this.props.navigation} />

<Greeting callback={this._onPressButton.bind(this)} />

<Text>結果:{this.state.flags}</Text>

</View>)}}

子元件

class Greeting extends Component {

constructor(props) {

super(props)

this.state = {

a: 4

}

}

render() {

return (

<View>

<TouchableOpacity onPress={() => {

setTimeout(() => { //使用setTimeout使改變的值立即生效

this.setState({ a: 444 }), this.props.callback(this.state.a) }) }} >

<Text>dsfghg</Text>

</TouchableOpacity>

</View>

)

}

}