2015-04-03 26 views
0

我正在开发这个Ionic/Cordova应用程序,我必须在$ state.go之后重新加载。我做这样的

$state.go('app.menu', {}, {reload: true}).then(function(){ 
       $window.location.reload(true); 
     }); 

上面的代码工作在一个浏览器完全正常,当我将其装入到一个iPhone模拟器出现问题。问题是它没有进入指定的状态,即app.menu

但是,如果我删除$window.location.reload(true);,它确实进入状态。

您认为是什么问题?

编辑︰如果我添加超时它的工作,但我不想那。像这样

$state.go('app.menu', {}, {reload: false}).then(function(){ 
     setTimeout(function() { 
      $window.location.reload(true); 
     }, 500); 
     }) 
+0

did you try location.reload(true); – 2015-04-03 14:23:01

+0

@ZeeshanHassanMemon我刚试过,同样的事情正在发生。 – tekesteg 2015-04-03 14:36:31

+0

你可以尝试通过设置缓存来解决这个问题:假像 .STATE(“app.menu”,{ 缓存:假的, 网址:“you_url_here”, – 2015-04-03 14:39:25

回答

1

这工作对我来说:Source Here

通过设计,视图被缓存。 尝试缓存:在您的状态下为假

$stateProvider.state('myState', { 
    cache: false, 
    url : '/myUrl', 
    templateUrl : 'my-template.html' 
}) 
2

使用$ timout没有延迟。这个对我有用。

$timeout(function() { 
    $window.location.reload(true); 
}); 
相关问题