Всегда с задержкой в ​​DropDownMenu или в выбранных меню, когда я использую функцию отправки - PullRequest
0 голосов
/ 26 сентября 2018

Здравствуйте, ребята, у меня возникла эта проблема, и я не могу найти решение в интернете, я просто хочу изменить язык, и когда я выбираю в списке, язык меняется, но имя все еще остается в нем, поэтому яЯ должен сделать это в другой раз, чтобы изменить имя, я работаю с Reaction + RedEx и Java,
я использую последний @ материал-UI.

заранее спасибо:)

const options = [
  'German',
  'English',

];

class ListMenu extends React.Component {

  button = null;
  state = {
    anchorEl: null,
    selectedIndex: 1,
  };
  handleClickListItem = event => {
    this.setState({ anchorEl: event.currentTarget });
  };

  handleMenuItemClick = (event, index) => {
    this.setState({ selectedIndex: index, anchorEl: null });
    var dispatch = this.props.dispatch;
      if (index == 0){
        dispatch(IntlActions.setLocale('de'));
      }else if (index == 1) {
        dispatch(IntlActions.setLocale('en'));
      }

  };

  handleClose = () => {
    this.setState({ anchorEl: null });
  };

  render() {
    const { classes } = this.props;
    const { anchorEl } = this.state;

    return (
      <div className={classes.root}>
        <List component="nav">
          <ListItem
            button
            aria-haspopup="true"
            aria-controls="lock-menu"
            aria-label="Language is"
            onClick={this.handleClickListItem}
          >
            <ListItemText
              primary="Language is"
              secondary={options[this.state.selectedIndex]}
            />
          </ListItem>
        </List>
        <Menu
          id="lock-menu"
          anchorEl={anchorEl}
          open={Boolean(anchorEl)}
          onClose={this.handleClose}
        >
          {options.map((option, index) => (
            <MenuItem
              key={option}
              selected={index === this.state.selectedIndex}
              onClick={event => this.handleMenuItemClick(event, index)}
            >
              {option}
            </MenuItem>
          ))}
        </Menu>
      </div>
    );
...