Перенаправление на экран с перехватчика API (вне компонента) в React Native

в качестве ответа @thomasrutter

Если вы ранее отправили 301 переадресацию, но хотите отменить это

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

Самое простое и лучшее решение - выпустить еще 301 перенаправление обратно.

Браузер поймет, что он направлен обратно на то, что он ранее считалось, что это выведенный из эксплуатации URL, и это должно привести к повторному извлечению этого URL-адреса, чтобы подтвердить, что старое перенаправление еще не существует.

Если у вас нет контроля над сайтом, где предыдущий перенаправлена ​​цель, тогда вам удача. Попробуйте попросить владельца сайта перенаправить обратно к вам.

На самом деле это означает:

  1. a.com 301 - b. com
  2. удалить 301.com
  3. сайта.com.com на сайт a.com

Затем он работает.

2
задан Haris Bouchlis 17 January 2019 в 09:56
поделиться

4 ответа

Для этой функции, я думаю, вам нужно использовать Redux

0
ответ дан Ioanna Papaplioura 17 January 2019 в 09:56
поделиться

попробуйте что-нибудь подобное

// App.js

import { createStackNavigator, createAppContainer } from 'react-navigation';
import NavigationService from './NavigationService';

const TopLevelNavigator = createStackNavigator({ /* ... */ })

const AppContainer = createAppContainer(TopLevelNavigator);

export default class App extends React.Component {
  // ...

  render() {
    return (
      <AppContainer
        ref={navigatorRef => {
          NavigationService.setTopLevelNavigator(navigatorRef);
        }}
      />
    );
  }
}

// NavigationService.js

import { NavigationActions } from 'react-navigation';

let _navigator;

function setTopLevelNavigator(navigatorRef) {
  _navigator = navigatorRef;
}

function navigate(routeName, params) {
  _navigator.dispatch(
    NavigationActions.navigate({
      routeName,
      params,
    })
  );
}

// add other navigation functions that you need and export them

export default {
  navigate,
  setTopLevelNavigator,
};
0
ответ дан Olivia Tree 17 January 2019 в 09:56
поделиться

Нет, вам не нужен Redux для этого. если вы используете React Navigation, вы можете сделать это следующим образом. Вы можете получить доступ отовсюду

https://reactnavigation.org/docs/en/navigating-without-navigation-prop.html

0
ответ дан Nazır Dogan 17 January 2019 в 09:56
поделиться

Вот простая средняя статья, в которой описывается сундук с редуксом. https://medium.com/@tkssharma/understanding-redux-react-in-easiest-way-part-1-81f3209fc0e5

Использовать redux-saga в качестве промежуточного программного обеспечения и использовать генератор функционировать новое будущее в es6

0
ответ дан Tasos Kakouris 17 January 2019 в 09:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: