0
這是我的狀態定義:怪異UI-SREF行爲:老PARAMS依然維持在URL雖然試圖改變
$stateProvider
.state('app.reports', {
url: '/reports?param1¶m2',
templateUrl: 'app/modules/report/views/reports.html',
controller: 'reportController',
controllerAs: 'vm'
});
當我點擊這些,
<a ui-sref="app.reports({param1:'param1'})">
它的工作如我所料,它調用我從reportController定義和調用的服務工廠函數,並從REST服務獲取數據並顯示它。而URL是http://.../#/app/reports?param1=param1
點擊此之後,
<a ui-sref="app.reports({param2:'param2'})">
它不工作。我的「工廠」功能沒有被調用,沒有任何REST調用,所以數據不會改變。不知何故,網址是http://.../#/app/reports?param1=param1¶m2=param2
這是不是很奇怪?
編輯:你可以在這裏看到它,http://plnkr.co/edit/wmfgqY9hCmIj9Bk39NaP?p=preview
下面是解釋和答案:https://github.com/angular-ui/ui-router/issues/3171#issuecomment-265946923 – miqbal