3 回答

TA貢獻1802條經(jīng)驗 獲得超4個贊
我認為最簡單的方法是稍后解析路由,例如,可以通過json詢問路由。確認我在配置階段通過$ provide在$ routeProvider之外建立了工廠,這樣我就可以在運行階段甚至在控制器中繼續(xù)使用$ routeProvider對象。
'use strict';
angular.module('myapp', []).config(function($provide, $routeProvider) {
$provide.factory('$routeProvider', function () {
return $routeProvider;
});
}).run(function($routeProvider, $http) {
$routeProvider.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
}).otherwise({
redirectTo: '/'
});
$http.get('/dynamic-routes.json').success(function(data) {
$routeProvider.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
});
// you might need to call $route.reload() if the route changed
$route.reload();
});
});
添加回答
舉報