$ 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

回到顶部