Ich bin neu zu reagieren und ich muss Daten von einer API abrufen und in einer Tabelle anzeigen. Ich verwende die React Table für die Anzeige der Daten in der Tabelle. Wie implementiert man das oben genannte? Derzeit sehe ich keine Antwort vom Server in der Google Chrome-Entwicklerkonsole. Die React Table-Implementierung arbeitet mit lokalen Daten, das Füllen der Tabelle von einer API funktioniert jedoch nicht. Mein Code ist wie folgt:Wie Sie die API aufrufen und in React JS mit React Table und Axios anzeigen lassen?
class TableExp extends React.Component {
constructor() {
super();
this.state = {
tableData: {
resourceID: '',
resourceType: '',
tenantName: '',
dealerID: '',
status: '',
logFilePath: '',
supportPerson: '',
lastUpdatedTime: '',
},
};
}
componentDidMount() {
axios.get(`https://myAPI.restdb.io/rest/mock-data`, {
headers: {'x-apikey': 'apiKEY'}
})
.then(response => {
this.setState({ tableData: response.data.tableData });
//console.log(tableData);
});}
render() {
const { tableData } = this.state;
return (
<div>
<ReactTable
data={tableData}
columns={[
{
Header: 'Details',
columns: [
{
Header: 'Tenant Name',
accessor: '{this.state.tableData.tenantName}',
},
{
Header: 'Support Engineer',
id: '{this.state.tableData.supportEngineer}',
accessor: d => d.supportPerson,
},
],
},
{
Header: 'Info',
columns: [
{
Header: 'Dealer ID',
accessor:'{this.state.tableData.dealerID}',
},
{
Header: 'Status',
accessor:'{this.state.tableData.status}',
},
],
},
{
Header: 'Logs',
columns: [
{
Header: 'File Path',
accessor:'{this.state.tableData.filePath}',
},
],
},
]}
defaultPageSize={10}
className="-striped -highlight"
/>
</div>
);
}
}
export default TableExp;
was loggt es wenn Sie 'console.log (Antwort)'? – bennygenel
> app.js: 139.699 Nicht abgefangene Fehler: Modul Build fehlgeschlagen: Syntaxerror: > /src/components/dashboard/tableSupport/tableExp.js Modul Build fehlgeschlagen: Angrenzend JSX Elemente müssen in einem umschließenden Tag (8 100) gewickelt werden: SyntaxError: Benachbarte JSX-Elemente müssen in ein umschließendes Tag (100: 8) eingebettet werden: – SeaWarrior404
@ SeaWarrior404, 'console.log (response)' und nicht 'console.log (tableData);' – Andrew