webview.goBack () выдает ошибку: UIManager.dispatchViewManagerCommand получил 2 аргумента, ожидается 3 - React Native - PullRequest
2 голосов
/ 20 сентября 2019

Я пытаюсь сделать пользовательские элементы управления навигацией для реакции-родного-веб-просмотра.Приложение выдает эту ошибку (в andorid & ios): error

Это мое первое приложение в React Native, но у меня есть опыт работы с React для веб-разработки.Я действительно не знаю, как отладить эту ошибку.Я не уверен, является ли эта ошибка причиной реакции-native-webview или ошибкой в ​​моем собственном коде.

Код

export default class BrowserScreen extends React.Component {

constructor(props) {
  super(props);
  this.state = { canGoBack: false };
}

backHandler = () => {
  if(this.webview){
    this.webview.goBack(); //this throws and error
  }
}

forwardHandler = () => {
  this.webview.goForward();
}

_refWebView = (webview) => {
  if (!webview) {
    return;
  }
  this.webview = webview;
}

render() {
  return (
    <SafeAreaView style={styles.container} >
      <View style={styles.controls}>
        <TouchableOpacity
          onPress={this.backHandler}
        >
          <Text style={styles.icon}>⬅️</Text>
        </TouchableOpacity>
      </View>
    <WebView
      source={{ uri: 'https://google.com' }}
      ref={this._refWebView}
    />
  </SafeAreaView>
  )
 }
}

1 Ответ

1 голос
/ 20 сентября 2019

Это была ошибка, которая была случайно отправлена ​​как часть версии 7.0.7 из react-native-webview.Это исправление для ошибки в настоящее время (на момент публикации этого ответа) находится в обзоре здесь , но до его выпуска, чтобы избежать этой ошибки, вам придется использовать версию react-native-webview ниже 7.0.7.

...