refreshControl 在 react-native 应用程序中给出“未定义不是函数......”
Posted
技术标签:
【中文标题】refreshControl 在 react-native 应用程序中给出“未定义不是函数......”【英文标题】:refreshControl gives "undefined is not a function..." in react-native app 【发布时间】:2017-07-06 08:39:57 【问题描述】:我正在尝试在 ScrollView 中添加刷新功能,但在尝试刷新时出现此错误:
undefined is not a function (evaluating '(0,_reactNative.fetchData)()')
我已经效仿in the documentation
这是我的代码
class Schedule extends Component
constructor(props)
super(props);
this.state =
refreshing: false
;
_onRefresh()
this.setState(refreshing: true);
fetchData().then(() =>
this.setState(refreshing: false);
);
render()
return (
<View>
<ScrollView
style=backgroundColor: "white" scrollEnabled=true horizontal=false
refreshControl=
<RefreshControl
refreshing=this.state.refreshing
onRefresh=this._onRefresh.bind(this)
/>
>
<View>
//...Content I'm trying to refresh
</View>
</View>
</ScrollView>
)
我无法想象代码本身有什么问题,因为它直接取自示例。导入也不应该有任何问题
import View, ScrollView, RefreshControl, fetchData from 'react-native';
【问题讨论】:
我不认为 fetchData 是从 'react-native' 导出的,您需要在组件中定义自己的 'fetchData' 函数。 您的标签不匹配:<View> <ScrollView> </View> </ScrollView>
我确定我这样做了 :) 在发布之前删除了一堆东西,所以事情变得混乱了!
【参考方案1】:
您必须提供不在react-native
模块中的fetchData
函数。
【讨论】:
知道如何创建一个获取本地视图的 fetchData 函数吗? 名称 fetchDate 表明它从 api 获取数据,当您收到此数据时,您将使用它更新您的状态。以上是关于refreshControl 在 react-native 应用程序中给出“未定义不是函数......”的主要内容,如果未能解决你的问题,请参考以下文章
React Native refreshControl 在下拉之前显示
在tableview中使用refreshcontrol时,如何知道用户是不是还在按住tableview?
ReactNative进阶(十七):RefreshControl组件实现刷新效果