Angularjs 数据到达后如何更新角度命名路由参数
我有点像Angularjs 数据到达后如何更新角度命名路由参数,angularjs,routes,Angularjs,Routes,我有点像 angular.module('MyApp.routing', []). config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) { $routeProvider .when("/", {action: "home"}) .when("/calculator/:slug/:docId/:vers
angular.module('MyApp.routing', []).
config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
$routeProvider
.when("/",
{action: "home"})
.when("/calculator/:slug/:docId/:versionId",
{action: "calculator", reloadOnSearch: false})
.otherwise({redirectTo:'/'});
}]);
在我的路由文件中。我向控制器中的后端API发出请求,并希望更新URL slug参数
$scope.initPage = function () {
$scope.content = {};
$scope.isPreloaderVisible = true;
http.post("calculator.getContentData.angular",
{'slug': $scope.slug, 'docId': $scope.docId, 'versionId': $scope.versionId}, getContentSuccess, getContentErrorHandler);
}
总而言之,我使用的URL如下:
http://localhost/#/calculator//123456/
我想将其更新(无需重新加载整个页面)为:
在方法GetContentSuccessfuse after request中。我认为任何路由更改都会导致视图(在ng视图中定义)自我更新。
reloadOnSearch
是一个参数,适用于基本上是querystring
参数的search
参数
所以,如果您可以将slug作为querystring的一部分而不是url路径,那么您可以停止视图更改
或者您需要查看其他路由库,如
http://localhost/#/calculator/slug/123456/