summaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
authorErnst Widerberg <ernstwi@kth.se>2021-10-13 08:30:25 +0200
committerErnst Widerberg <ernstwi@kth.se>2021-10-13 08:30:25 +0200
commit65a5b255d0b3d35ca9908b42f81ed50099308557 (patch)
treef9a1d45fb3aad58178c39870a41967fd0cf6b43c /src/components
parent443c2e1ab711962b6f657f97c86c5cac7b39c6c6 (diff)
Update Object view for backend changes, and fix setError
Diffstat (limited to 'src/components')
-rw-r--r--src/components/App.js10
-rw-r--r--src/components/Login.js4
-rw-r--r--src/components/ObjectView.js13
3 files changed, 16 insertions, 11 deletions
diff --git a/src/components/App.js b/src/components/App.js
index 3a1d65d..592a062 100644
--- a/src/components/App.js
+++ b/src/components/App.js
@@ -40,8 +40,8 @@ class App extends React.Component {
localStorage.removeItem("token");
}
- setError(msg) {
- this.setState({ error: msg });
+ setError(e) {
+ this.setState({ error: e.message });
}
clearError() {
@@ -64,7 +64,7 @@ class App extends React.Component {
<Header clearToken={this.clearToken} />
<Switch>
<Route path="/:id">
- <MakeObjectView />
+ <MakeObjectView setError={this.setError} />
</Route>
<Route path="/">
<List setError={this.setError} />
@@ -75,9 +75,9 @@ class App extends React.Component {
}
}
-function MakeObjectView() {
+function MakeObjectView(props) {
let { id } = useParams();
- return <ObjectView id={id} setError={this.setError} />;
+ return <ObjectView id={id} setError={props.setError} />;
}
export default App;
diff --git a/src/components/Login.js b/src/components/Login.js
index 7555dcf..7684703 100644
--- a/src/components/Login.js
+++ b/src/components/Login.js
@@ -41,7 +41,9 @@ class Login extends React.Component {
if (resp.status === 401) this.setState({ error: true });
else
this.props.setError(
- `Unexpected response status: ${resp.status} ${resp.statusText}`
+ new Error(
+ `Unexpected response status: ${resp.status} ${resp.statusText}`
+ )
);
});
}
diff --git a/src/components/ObjectView.js b/src/components/ObjectView.js
index 4a04c93..e6556c1 100644
--- a/src/components/ObjectView.js
+++ b/src/components/ObjectView.js
@@ -23,13 +23,16 @@ class ObjectView extends React.Component {
}
})
.then(resp => resp.json())
+ .then(resp => {
+ // TODO: Look at `status` or return code or both?
+ if (resp.status != "success")
+ throw `soc_collector responded: ${resp.status}`;
+ return resp.data;
+ })
// TODO: Proper API call to get single object
.then(data => data.filter(x => x._id == this.props.id)[0])
- // .then(data => {
- // console.log(data);
- // return data;
- // })
- .then(object => this.setState({ object: object }));
+ .then(object => this.setState({ object: object }))
+ .catch(e => this.props.setError(e));
}
render() {