Skip to content
This repository was archived by the owner on Nov 14, 2020. It is now read-only.

Commit 14398c9

Browse files
committed
refresh data when selected namespace changes
1 parent b7e7a58 commit 14398c9

File tree

1 file changed

+21
-9
lines changed

1 file changed

+21
-9
lines changed

src/components/Tabs.js

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import AppBar from '@material-ui/core/AppBar';
55
import Tabs from '@material-ui/core/Tabs';
66
import Tab from '@material-ui/core/Tab';
77
import Typography from '@material-ui/core/Typography';
8-
import DatasetTable from './DatasetTable';
98
import MUIDataTable from "mui-datatables";
109
import axios from 'axios'
1110

@@ -19,6 +18,7 @@ function TabContainer(props) {
1918

2019
TabContainer.propTypes = {
2120
children: PropTypes.node.isRequired,
21+
selectedNamespace: PropTypes.node.isRequired
2222
};
2323

2424
const styles = theme => ({
@@ -35,20 +35,32 @@ class SimpleTabs extends React.Component {
3535
value: 0,
3636
jobs: [],
3737
datasets: [],
38+
namespace: null
3839
};
3940
}
4041

41-
componentDidMount(){
42-
axios.get('/api/v1/namespaces/demo/jobs/').then((response) => {
43-
const jobData = response.data
44-
const jobRows = jobData.jobs.map(job => [job.name, job.description, job.createdAt])
45-
this.setState({jobs: jobRows})
46-
})
47-
axios.get('/api/v1/namespaces/demo/datasets/').then((response) => {
42+
fetchData(namespace) {
43+
axios.get('/api/v1/namespaces/' + namespace + '/jobs/').then((response) => {
44+
const jobData = response.data
45+
const jobRows = jobData.jobs.map(job => [job.name, job.description, job.createdAt])
46+
this.setState({jobs: jobRows})
47+
});
48+
axios.get('/api/v1/namespaces/' + namespace + '/datasets/').then((response) => {
4849
const datasetData = response.data
4950
const datasetRows = datasetData.datasets.map(dataset => [dataset.name, dataset.createdAt])
5051
this.setState({datasets: datasetRows})
51-
})
52+
});
53+
}
54+
55+
componentDidMount(){
56+
this.fetchData(this.state.selectedNamespace);
57+
}
58+
59+
componentDidUpdate(prevProps) {
60+
if(this.props.namespace != prevProps.namespace) {
61+
this.setState({namespace: this.props.namespace});
62+
this.fetchData(this.props.namespace);
63+
}
5264
}
5365

5466
handleChange = (event, value) => {

0 commit comments

Comments
 (0)