Javascript angularjs ui路由器返回到当前状态
我正在应用程序中使用angularJavascript angularjs ui路由器返回到当前状态,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我正在应用程序中使用angularui路由器。我有两种状态,创建应用程序和列出应用程序。当我创建应用程序时,我会转换到状态create app,参数id等于null。问题是,当我处于状态create app时,我无法转换到create app。用例是,如果在创建一个应用程序的过程中,我想创建另一个应用程序,我必须“代码>转换到 创建App,但是由于该状态已经是代码>创建APP,UI路由器不会改变状态。我知道这一点,因为我查找了$stateChangeStart和$statechangesucce
ui路由器。我有两种状态,创建应用程序
和列出应用程序
。当我创建应用程序时,我会转换到状态create app
,参数id
等于null
。问题是,当我处于状态create app
时,我无法转换到create app
。用例是,如果在创建一个应用程序的过程中,我想创建另一个应用程序,我必须“代码>转换到 <代码>创建App
,但是由于该状态已经是代码>创建APP<代码>,UI路由器不会改变状态。我知道这一点,因为我查找了$stateChangeStart
和$statechangesuccessuccess
事件的触发。这些都不是火灾。但是当我在“列表应用程序”上,或者甚至在参数id
不等于null
(编辑应用程序)的create app
上时,我能够进入状态create app
$scope.createApp = function() {
$state.transitionTo('create-app', {id: null});
};
所以我试过这个
$scope.createApp = function() {
if ($state.current.name == 'create-app' && $state.params.id == null) { // when the state is create-app and not list-apps or edit-app
$state.current.name = '';
}
$state.transitionTo('create-app', {id: null});
};
在这种情况下,当状态为create app
且我再次尝试进入相同的状态时,我将状态名称更改为'
,将参数更改为null
,因此angular会发现fromState
和toState
不同。即使这样也不行。有什么方法可以做到这一点吗?你可以使用github上有关于这一点的讨论。
像这样使用它:
$state.reload();