Как перезагрузить WebView при ответной навигации - PullRequest
0 голосов
/ 10 июля 2020

Как я могу перезагрузить веб-просмотр в исходный код, когда я нажимаю кнопку в навигаторе? Я могу сбросить исходный comp onet с помощью?

React.useEffect(() => {
     const unsubscribe = navigation.addListener('tabPress', e => {
  
});

Или я могу перезагрузить веб-просмотр на компоненте?

function TabOneNavigator({ navigation }) {
  React.useEffect(() => {
    const unsubscribe = navigation.addListener('tabPress', e => {
      alert('Default behavior prevented');
    });

    return unsubscribe;
  }, [navigation]);

  return (
    <TabOneStack.Navigator>
      <TabOneStack.Screen
        name="Perfil"
        component={TabOneScreen}
        options={{ headerTitle: 'IzyJob' }}
      />
    </TabOneStack.Navigator>
  );
}

мой экран

export default class App extends React.Component {
  state = {
    url: 'https://www.google.com'
  };
  render() {
    return <WebView 
    source={{ uri: this.state.url }} 
    style={{ marginTop: 0 }} />;
  }
}

My идея заключается в том, что страница в веб-просмотре отличается от state.url и имеет щелчок по вкладке навигации, которую я перезагружаю на исходный URL-адрес

1 Ответ

2 голосов
/ 10 июля 2020

Сначала создайте ссылку для webview, как показано ниже

<WebView
    ref={(ref) => { this.webview = ref; }}
    source={{ uri: this.state.url }} 
    style={{ marginTop: 0 }} />;

Затем позвоните this.webview.reload() где хотите, этот код поможет вам обновить sh ваш webview

...