Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应-如何重新分解组件?_Javascript_Reactjs_React Native - Fatal编程技术网

Javascript 反应-如何重新分解组件?

Javascript 反应-如何重新分解组件?,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我刚刚完成在服务器上推送数据,但是用于获取数据的组件没有按预期工作,以下是模型: import DataExport class DataPackage extends Component { DoMagic() { // return data array (ex: items) } render() { return ( <DataExport items={this.state.items}/>

我刚刚完成在服务器上推送数据,但是用于获取数据的组件没有按预期工作,以下是模型:

import DataExport 

class DataPackage extends Component {
    DoMagic() {
        // return data array (ex: items)
    }

    render() {
       return (
       <DataExport items={this.state.items}/>
    );}
}
导入数据导出 类数据包扩展组件{ 多马吉克(){ //返回数据数组(例如:项) } render(){ 返回( );} } 关于以后,无论我对
DoMagic()
中的项目做了什么,也与
DataExport
无关,我如何刷新项目,
DataExport
以正确获取数据


谢谢你的关注

您应该使用生命周期方法

在ComponentDidMount()中获取数据


组件装入并准备就绪后,将立即调用ComponentDidMount()。这是启动API调用的好地方,所以在这里加载数据,并使用此.setState()在此处设置组件状态。

我想知道为什么DataExport不刷新项目,尽管我这样做了。在DataPackage中,setState({items})我知道数据保留在驱动器中,但DataExport显示的内容不正确(索引无效)如果我能做出与DataExport.refresh()@user3536460相同的东西,那真是奇迹。你能提供你的代码模式吗?一些与数组映射相关的东西,初始化数据数组后,它仍然是每个项目的索引,之后,更新的firebase将引发我的应用程序生成冲突(这就是我所能想象的)无论如何,我通过在插入新数据时关闭组件数据解决了这个问题,似乎它不是。。。很好,很直观。。。至少它可以运行,谢谢你的兴趣!你能提供你的代码模式吗?