$routeProvider.when 中的控制器与模板中的 ng-controller

Controller in $routeProvider.when vs ng-controller in template

新 Angular.js。

传递控制器有什么区别

app.config(function($routeProvider, $locationProvider){ $locationProvider.html5Mode(false); $routeProvider .when('/login', {templateUrl: '/templates/profile/login.html', controller: 'angLoginController'}); });

vs 在模板本身中使用 ng-controller 指令声明控制器?

<body ng-controller="angLoginController"> .... </body>

简而言之:关注点分离。如果您将所有控制器都放置在路由器中的视图中,那么维护起来会更容易。您需要在一处进行全部编辑。

In $routeProvider

这使您可以灵活地管理与该特定路线相关的所有控制器和视图。在这种情况下,您可以在一处管理控制器。

In second case: inside view

如果您将它放在个人视图中,那么您需要转到该视图并对其进行编辑。