我正在学习如何在组件中直接操作。 链接是:enter link description here
class MyButton extends React.Component {
render() {
return (
<View>
<Text>{this.props.label}</Text>
</View>
)
}
}
class App extends React.Component {
render() {
return (
<TouchableOpacity>
<MyButton label="Press me!" />
</TouchableOpacity>
)
}
}
但是我不明白这个演示的问题是什么:
我认为没关系,并且不会抛出此异常:Touchable child must either be native or forward setNativeProps to a native component.
我尝试直接使用ref。
来使用setNativePropsclass MyButton extends React.Component {
render() {
return (
<View >
<Text>{this.props.label}</Text>
</View>
)
}
}
class App extends React.Component {
render() {
return (
<TouchableOpacity>
<MyButton
ref="test"
label="Press me!"/>
</TouchableOpacity>
)
}
componentDidMount() {
console.log('---componentDidMount');
//console.log(this.refs.test._root.setNativeProps);
this.refs.test.setNativeProps({label: 'hello'});
}
}
但我收到一些错误消息:this.refs.test.setNativeProps({label: 'hello'});is not a function
示威活动无法访问。
如果有人知道这个原因,请告诉我,谢谢。祝福。