setTimeout(() => {
var pages = getCurrentPages();
var page = pages[pages.length - 1];
var currentWebview = page.$getAppWebview();
var url = currentWebview.children()[0].getURL();
console.log('=== url ===', url);
var wv = currentWebview.children()[0];
wv.overrideUrlLoading({
mode: 'reject',
match: '.*'
}, function(e) {
console.log('reject url: ' + e.url);
uni.navigateTo({
url: /pages/xxx/xxx?weburl=${e.url}
})
});
}, 400)
从 "console.log('=== url ===', url);"这里就开始报错url is undefined 。就算换成下面这种也不行,overrideUrlLoading的回调函数不执行。
setTimeout(() => {
var pages = getCurrentPages();
var page = pages[pages.length - 1];
var currentWebview = page.$getAppWebview();
currentWebview.overrideUrlLoading({
mode: 'reject',
match: '.*'
}, function(e) {
console.log('reject url: ' + e.url);
uni.navigateTo({
url: `/pages/xxx/xxx?weburl=${e.url}`
})
});
}, 400)
1 个回复
BoredApe - 有问题就会有答案。
nvue webview
不支持overrideUrlLoading
方法