以角度更改视图的控制器

时间:2015-04-14 14:35:22

标签: angularjs

有没有办法让我以角度更改视图的控制器?

angular.module('app', [
  'ngRoute'
]).
config(['$routeProvider', function($routeProvider) {
  $routeProvider.when('/', {
    templateUrl: 'views/home/index.html',
    controller: 'home',
    replace: false
  })
  $routeProvider.otherwise({redirectTo: '/'});
}]);

我要做的是在运行时为index.html提供另一个控制器。

2 个答案:

答案 0 :(得分:1)

不要弄乱视图,而是定义几个视图,并使用state更改当前配置。

ex:view1有控制器#1和url#1 view2有控制器#2和url#1

阅读此博客以获得更全面的解释: http://txt.fliglio.com/2013/05/angularjs-state-management-with-ui-router/

答案 1 :(得分:0)

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(); }); });