Перенаправить пользователя, если значение в хранилище приставок отсутствует из компонента - PullRequest
0 голосов
/ 08 октября 2019

Если значение отсутствует в хранилище с избыточностью, пользователь должен быть перенаправлен на страницу, а если нет, он должен продолжаться.

В соответствии с методами жизненного цикла реагирования конструктор кажется подходящим местом для этой прикладной задачи. Я не уверен, должен ли я сделать это здесь или нет. Есть ли у нас какой-либо другой подход к этому.

в конструкторе (), если (идентификатор найден в избыточном хранилище), продолжайте, иначе перенаправьте пользователя на страницу.

Ответы [ 2 ]

0 голосов
/ 08 октября 2019

сначала проверьте наличие

class Main extends Component {
  constructor() {
    super();
    this.state = {
      valuePresentIn: false
    };
  }
  componentDidMount() {
    this.checkValueAvailability(myReduxStoreData);
  }
  checkValueAvailability(data) {
  // Condition if the data is available
    if (data) {
      this.setState({ valuePresentIn: true });
    }
  }
  render() {
    this.state.valuePresentIn ?
      redirect()
      :
      null
  }

  return(<yourComponents />);
}
0 голосов
/ 08 октября 2019

Вы должны обрабатывать перенаправления в методе рендеринга. Поэтому, когда ваши реквизиты изменятся, ваше приложение сможет реагировать на эти изменения.

render() {
  if (shouldRedirect) {
    return <Redirect to="/some-page"} />
  }
  ...
  Everything else can stay the same here
  ...
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...