我的例子很简单。我正确地将参考分配给滑块,然后尝试设置其原生的步骤道具:
<SliderIOS
ref={(slider) => this.slider = slider}
onValueChange={(value) {
if(value >= 1000) this.slider.setNativeProps({step: 100});
else this.slider.setNativeProps({step: 100});
}}
但是我收到了错误:
“本机无法读取属性'validAttributes'未定义”
定义了滑块。我已将其记录到控制台,并且它具有setNativeProps
方法等。错误发生在后面的反应本机代码中。
答案 0 :(得分:0)
昨天我遇到了这个问题。
当我在refreshControl
中使用ListView
时,我发现了一个错误
无法读取未定义的属性'validAttributes'
这是我的代码
<ListView dataSource={theDataSource} renderRow={this._renderRow.bind(this)} onEndReached={this.props.pullUp.bind(this)} refreshControl={ <RefreshControl ref='freshIndicator' refreshing={this.state.isRefreshing} onRefresh={()=>this._onRefresh()} title={this.state.freshText} titleColor={Util.themeColor} tintColor={Util.themeColor}/> } />
_onRefresh(){
console.log(this.refs['freshIndicator']);
this.refs['freshIndicator']._nativeRef.setNativeProps({
refreshing: true,
title:'loading'
});
this.props.onRefresh();}
请勿像此组件一样使用setNativeProps
,否则请改用this.refs['freshIndicator']._nativeRef.setNativeProps
。
注意_nativeRef
属性
清爽工作正常。