$ route.reload()不适用于ui-router
我已切换到ui-router。除一件事外,一切进展顺利。在我的页面上,我有一个选择可以更改应用程序的上下文。无论如何,以前,当更改此上下文时,我正在执行以下代码(特别是
方法):
'use strict';angular.module('main').factory('lacContext', ['$route', function ($route) {
return {
set: function (id) {
sessionStorage.setItem("lac-context", id);
$route.reload();
},
get: function () {
return sessionStorage.getItem("lac-context");
}
};
}])
和
$route.reload()
在做最重要的事情。它重新加载了页面。但是切换到ui-router后,$ route.reload不会执行任何操作。另外,我在ui-router
API中找不到对应的内容。如何解决这个问题?
回答:
好的,当我将$ state注入控制器时,它可以工作。
但是,当将其像代码片段一样注入服务时,$ state当然是未定义的。
虽然
$state.go('.')
没有用,我做了这样的事情:
$stateProvider .state('home', {
controller: function ($state) {
$state.go('advisoryLeadOffering.packages');
}
})
.state('advisoryLeadOffering.packages', {
url: "/packages",
templateUrl: "/AdvisoryLeadOffering/Packages",
controller: 'AdvisoryLeadOfferingPackages'
})
当我需要重新加载时,我会执行以下操作:
$state.transitionTo('home');
内部范围的方法。
以上是 $ route.reload()不适用于ui-router 的全部内容, 来源链接: utcz.com/qa/414412.html