Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.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
Node.js 如何从RESTAPI获取数据以填充物料表?_Node.js_Reactjs_Material Ui_Fetch Api_Material Table - Fatal编程技术网

Node.js 如何从RESTAPI获取数据以填充物料表?

Node.js 如何从RESTAPI获取数据以填充物料表?,node.js,reactjs,material-ui,fetch-api,material-table,Node.js,Reactjs,Material Ui,Fetch Api,Material Table,我正在构建一个应用程序,它将从API请求数据,并将其显示在一个可编辑的表中,用户可以在其中编辑和更新数据库。我正在使用React with 我遵循了这个示例,使用硬编码数据时一切都很好。但是,我希望从API端获取真实数据,以显示在表中。我签出了物料表文档,但它无法解决我的问题 我以父组件的状态初始化数据,并将其作为道具传递给呈现表的子组件 如何实时获取数据?注:我使用的是功能组件 提前感谢。这是一个工作代码,我使用假API填充表 问题是当组件挂载您的道具时。数据为[],并且在表组件中您将其设置为

我正在构建一个应用程序,它将从API请求数据,并将其显示在一个可编辑的表中,用户可以在其中编辑和更新数据库。我正在使用React with

我遵循了这个示例,使用硬编码数据时一切都很好。但是,我希望从API端获取真实数据,以显示在表中。我签出了物料表文档,但它无法解决我的问题

我以父组件的状态初始化数据,并将其作为道具传递给呈现表的子组件

如何实时获取数据?注:我使用的是功能组件

提前感谢。

这是一个工作代码,我使用假API填充表

问题是当组件挂载您的道具时。数据为[],并且在表组件中您将其设置为

const [gridData, setGridData] = useState({
    data: props.data,
    columns: props.col,
    resolve: () => {},
    updatedAt: new Date()
  });
在这里,数据将被分配为[]&现在当api请求发生时,props.data已填充,但您的useState已初始化,因此数据仍将为[]

要解决此问题,可以使用props.data作为

<MaterialTable
    title="Your Title"
    columns={gridData.columns}
    data={props.data} // use props.data to populate the table
    editable={{
      isEditable: rowData => true,
      isDeletable: rowData => true,
      onRowAdd: onRowAdd,
      onRowUpdate: onRowUpdate,
      onRowDelete: onRowDelete
    }}
/>

或者您可以为数据创建一个单独的状态,并检查其是否已更新或未使用useEffect。

嘿,您的响应的格式是什么,或者您可以将您的API响应粘贴到此处,或者硬编码的数据是否与您的API响应相同?{消息:已检索到所有位置记录,totalRecords:3,data:[{id:f0669917-7159-4e5c-9ac0-d80bb278792f,代码:GEO/234/210,国家:尼日利亚,州:拉各斯,lga:2,地标:城市,社区名称:Oja,地点名称:医院,纬度:66.5678,经度:-77.76854,更新日期:2020-05-11T09:42:45.885Z,deletedAt:null},{}]}谢谢兄弟。让我试试。如果你在这方面遇到任何问题,一定要告诉我。谢谢Sahil。我试过了,它很管用,尽管我不得不稍微修改我的代码。