如何通过重新加载重新加载Angular解决方案?
SELECT *
FROM (SELECT *,
ROW_NUMBER() OVER (PARTITION BY DriverID,StartTime ORDER BY InsertTS DESC) RowNum
FROM MyTable
) t
WHERE RowNum = 1
.when('/dashbord', {
title: 'dashbord',
templateUrl: 'views/dashbord.php',
controller: 'dashbordController',
resolve: {
getDashbord: function (getDashbordService) {
return getDashbordService;
}
}
})
以上功能仅重新加载视图。它没有重新加载决心。
我怎么能以角度来做?
答案 0 :(得分:1)
答案 1 :(得分:0)
我知道这是一个迟到的答案,但有一点要记住,Angular服务是单例 - 这意味着如果您将解析函数定义为服务(尤其是一个发出$http
请求的服务),每次路线结算时,你都会得到相同的结果。
例如,这会使用一个提出$http
请求的Angular服务,并且不会在$http
上发出新的$route.reload()
请求:
angular.module('myApp').factory('getDashboardService', ['$http', function getDashboardService($http) {
return $http.get('/path/to/resource'); // returns a promise
}]).config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/dashboard', {
title: 'dashboard',
templateUrl: 'views/dashboard.php',
controller: 'DashboardController',
resolve: {
getDashbord: 'getDashboardService' // refers to an Angular service
}
});
}]);
...但这会,因为它不是注入的服务:
angular.module('myApp').config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/dashboard', {
title: 'dashboard',
templateUrl: 'views/dashboard.php',
controller: 'DashboardController',
resolve: {
getDashboard: ['$http', function($http) {
return $http.get('/path/to/resource');
}]
}
});
});
这是一个JSFiddle:https://jsfiddle.net/sscovil/77ys9hz5/