Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

254
Vistas
'Url' de 'webview' en reaccionar nativo

Quiero saber la URL cada vez que cambia en Webview . Busqué mucho en línea. Y de acuerdo con eso, he hecho estos cambios. Pero todavía no está funcionando.

Qué estoy haciendo mal aquí. Por qué no funciona.

Solo se registra por primera vez. o funciona cuando hago clic en algún otro botón en la pantalla. ¿Qué me estoy perdiendo?

 import React, { Component } from 'react'; import { Text, View, StyleSheet } from 'react-native'; import { WebView } from 'react-native-webview'; const initialUrl = 'https://www.youtube.com/'; let url = ''; class App extends Component { state = { url: initialUrl, }; onNavigationStateChange = navState => { console.log("navstate=== ",navState) if (url!==navState.url) { url = navState.url; alert(url); this.setState({ url: url }) } }; render() { const { url } = this.state; const injectedJs = ` var linkElements = document.getElementsByTagName("a"); linkElements[0].addEventListener("click", function() { window.postMessage("addAccountSuccess?token=abc1234"); }); linkElements[1].addEventListener("click", function() { window.postMessage("addAccountError"); `; return ( <View style={{paddingTop: 24, flex: 1}}> <Text style={{backgroundColor: 'black', color: 'white'}}>{ url }</Text> <WebView style={{ flex: 1}} source={{ uri: initialUrl, }} injectedJavaScript={injectedJs} startInLoadingState scalesPageToFit javaScriptEnabledAndroid={true} javaScriptEnabled={true} domStorageEnabled startInLoadingState={false} onNavigationStateChange={this.onNavigationStateChange.bind(this)} onMessage={event => { alert('MESSAGE >>>>' + event.nativeEvent.data); }} onLoadStart={() => { console.log("LOAD START "); }} onLoadEnd={() => { console.log('LOAD END'); }} onError={err => { console.log('ERROR '); console.log(err); }} /> </View> ); } } export default App;
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda