我正在尝试使用$ route.reload()从我的控制器重新加载路由,但什么也没发生。这是我的控制者:
app.controller("FooController", function($scope, data, $route) {
$scope.model = data.model;
$scope.meta = data.meta;
$scope.reload = function() {
return $route.reload();
};
});
我使用angular-route-segment作为路线,相关路线如下:
app.config(function($routeSegmentProvider) {
$routeSegmentProvider.segment("foo", {
templateUrl: templatesRoot + "/tickers/oldest.html",
controller: "FooController",
resolve: {
data: function($http) {
return $http.get("/api/foos").then(function(response) {
return {
model: response.data.foos,
meta: response.data.meta
};
});
}
},
untilResolved: {
templateUrl: templatesRoot + "/loading.html"
}
});
});
答案 0 :(得分:1)
注入$routeSegment
而不是$route
。
属性chain
是由每个级别分别划分的段数组,每个元素都有reload
方法。
例如:
$scope.reload = function() {
$routeSegment.chain[0].reload();
};
$routeSegment
上可用的其他属性和方法以及chain
数组中的元素可以找到here。