class Benutzer extends React.Component { constructor(props) { super(props); } async fetchOwnData() { return fetch('/api/accounts', { method: 'GET', headers: { 'Content-Type': 'application/json', 'token': this.props.token } }).then(data => data.json()) } async componentDidMount() { const data = await this.fetchOwnData(); if (!data || data.status > 300) { //this.setState({ error: "Fehler beim laden der Daten" }); this.props.setMessage("Fehler beim laden der Daten") } else { this.setState({ fetchedData: data}); } } onChange(e, data) { e.preventDefault(); this.props.setMessage("Ändern eines fremden Benutzers!") this.props.navTo("profile", {email: data.email}) } onCreate(e, data) { e.preventDefault(); this.props.setMessage("Neu Anlage eines Benutzers mit Rolle" + data.role); this.props.navTo("profile", data); } onLink(e, data) { e.preventDefault(); this.props.setMessage("Verlinkungen zu Benutzer " + data.name); this.props.navTo("link", data); } render() { if (!this.state || !this.state.fetchedData) { //this.props.setMessage("Noch keine Daten geladen"); //return (
Noch keine Daten vorhanden
) } else if (this.state.error) { //return (

Fehler beim Laden der Daten

) } return (
Mail-Adresse
Name
Dateien
Passwort
Benutzerrolle
letztes Login
{this.state && this.state.fetchedData && this.state.fetchedData.map((data) => { return (
{data.email}
{data.name}
{data.role}
{new Date(data.login).toLocaleString()}
) }) }
Neuen Benutzer anlegen
) } }