gpt4 book ai didi

javascript - 页面重定向时如何从 webview 获取 url? (这是功能组件而不是类)

转载 作者:行者123 更新时间:2023-12-02 22:35:44 25 4
gpt4 key购买 nike

这是我的功能组件

const MyScreen = (props) => {

return (
<Wrapper>
<WebView
source={{uri: `${Helpers.URL}`}}
javaScriptEnabled={true} //enabling JavaScript
javaScriptEnabledAndroid={true}
onMessage={event => {
}}
onLoadStart={() => {
console.log("LOAD START ");
}}
onLoadEnd={() => {

}}
onError={err => {
console.log('ERROR ');
console.log(err);
}}
onNavigationStateChange = {() => {
console.log('State changed...');
// TODO: check what the url is at this point
}}

/>
</Wrapper>

)
}

我希望能够获取新加载页面的 url。

最佳答案

你可以试试

const MyScreen = (props) => {


handleNavigationStateChange = navState => {
// This gets us the navstate which has the url of the newly loaded page
console.log(navState);
};


const url = `${Helpers.URL}`

// this javascript will be injected on page load
const injectedJs = `
window.postMessage(window.location.href);
`;


return (
<WebView
source={{ uri: url }}
bounces={true}
style={[
{
flex: 1
},
]}
injectedJavaScript={injectedJs}
startInLoadingState
scalesPageToFit
javaScriptEnabledAndroid={true}
javaScriptEnabled={true}
onNavigationStateChange={this.handleNavigationStateChange}
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);
}}
/>
)
}

关于javascript - 页面重定向时如何从 webview 获取 url? (这是功能组件而不是类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58743486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com