我正在使用移动应用程序:
我使用InAppBrowser插件使用外部网址查看了一个视图,我在此网站中有一个链接应该重定向到我的应用中的某个视图
这个问题是$location.url()
没有重定向而根本不工作,但是当我测试这个事件时,我发现它正常触发。
这是我的完整代码
angular.module('yogipass').controller('iframe',function ($location) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log('here');
var ref=cordova.InAppBrowser.open('http://192.168.42.218/index.html', '_blank', 'location=no');
ref.addEventListener('loadstart', function(event) {
if (event.url.match("mobile/login")) {
console.log('worked!') // this logged normally
$location.url('/login');
ref.close();
}
});
}
])
答案 0 :(得分:1)
当您从异步事件更改location
路径时,您必须手动运行摘要周期。
将代码包装在$timeout
函数中,这将启动摘要周期。显然,这将有助于更新位置。
$timeout(function(){
$location.url('/login');
})