RN中子元件傳值給父元件
阿新 • • 發佈:2019-02-15
父元件與子元件之間的傳值主要分為,父元件向子元件傳值這個比較簡單,第二種是子元件向父元件傳值主要思想是:父元件向子元件傳遞一個函式,父元件傳給子元件一個函式 然後將要傳的值作為函式的引數返回給父元件
//父元件
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>
)
}
}