materialuiupgraded
Version:
Material-UI's workspace package
83 lines (75 loc) • 2.37 kB
JavaScript
import React from 'react';
import PropTypes from 'prop-types';
import { withStyles } from '@material-ui/core/styles';
import List from '@material-ui/core/List';
import ListItem from '@material-ui/core/ListItem';
import ListItemIcon from '@material-ui/core/ListItemIcon';
import ListItemText from '@material-ui/core/ListItemText';
import Divider from '@material-ui/core/Divider';
import InboxIcon from '@material-ui/icons/Inbox';
import DraftsIcon from '@material-ui/icons/Drafts';
const styles = theme => ({
root: {
width: '100%',
maxWidth: 360,
backgroundColor: theme.palette.background.paper,
},
});
class SelectedListItem extends React.Component {
state = {
selectedIndex: 1,
};
handleListItemClick = (event, index) => {
this.setState({ selectedIndex: index });
};
render() {
const { classes } = this.props;
return (
<div className={classes.root}>
<List component="nav">
<ListItem
button
selected={this.state.selectedIndex === 0}
onClick={event => this.handleListItemClick(event, 0)}
>
<ListItemIcon>
<InboxIcon />
</ListItemIcon>
<ListItemText primary="Inbox" />
</ListItem>
<ListItem
button
selected={this.state.selectedIndex === 1}
onClick={event => this.handleListItemClick(event, 1)}
>
<ListItemIcon>
<DraftsIcon />
</ListItemIcon>
<ListItemText primary="Drafts" />
</ListItem>
</List>
<Divider />
<List component="nav">
<ListItem
button
selected={this.state.selectedIndex === 2}
onClick={event => this.handleListItemClick(event, 2)}
>
<ListItemText primary="Trash" />
</ListItem>
<ListItem
button
selected={this.state.selectedIndex === 3}
onClick={event => this.handleListItemClick(event, 3)}
>
<ListItemText primary="Spam" />
</ListItem>
</List>
</div>
);
}
}
SelectedListItem.propTypes = {
classes: PropTypes.object.isRequired,
};
export default withStyles(styles)(SelectedListItem);