我有一个Flatlist,在将本机版本从0.55升级到0.57之前,它可以正常工作
它在所有设备上都能正常工作,但现在仅在android版本> = 5上有效 并在屏幕开头的android 4上显示错误:
Exception in native call from JS
null
我已经尝试了2个星期,现在我真的不知道该怎么办。
好吧... 这是我的平面清单。 我发现问题出在ListHeaderComponent
如果我替换ListItem并将其子级放到Button标记中,则不会显示该错误:
显示错误:
return (
<FlatList
data={this.state.items}
renderItem={this.renderItem}
shouldItemUpdate={(props, nextProps) => {
return props.item !== nextProps.item
}}
keyExtractor={(item, index) => index.toString()}
ListEmptyComponent={() => this.state.loading ? <MySpinner notMax={true}/> : []}
ListHeaderComponent={() => (
<ListItem itemDivider style={Styles.ListItem}>
<TouchableWithoutFeedback onPress={() => Actions.categories_page({title:'categories'})}>
<View>
<Text textStyle={Styles.ListItemAllBtn}>Category</Text>
</View>
</TouchableWithoutFeedback>
<Text textStyle={Styles.ListItemText}>today off</Text>
</ListItem>
) }
numColumns={2}
// refreshing={this.state.refreshing}
// onRefresh={this.handleRefresh}
removeClippedSubviews={false}
showsHorizontalScrollIndicator={false}
onEndReached={this.props.isLimit ? '' : this.handleLoadMore}
onEndReachedThreshold={0.8}
initialNumToRender={8}
horizontal={this.props.horizontal}
ListFooterComponent={this.renderFooter}
getItemLayout={this.getItemLayout}
inverted={this.props.horizontal ? true : false}
/>
)
,如果我这样编写ListHeaderComponent,它不会显示错误:
ListHeaderComponent={() => (
<View style={Styles.ListItem}>
<Button>
<Text textStyle={Styles.ListItemAllBtn}>Category</Text>
</Button>
</View>
)}
但是我不想写一个按钮标签,并把我的Text插入。 我认为问题出在其他方面...
有人可以帮忙吗?