Javascript 视图和控制器之间的AngularJS耦合

Javascript 视图和控制器之间的AngularJS耦合,javascript,angularjs,Javascript,Angularjs,我有一个AngularJS应用程序,在该应用程序中,我从使用ng controller指令定义控制器的视图文件开始 myview.html <div ng-controller="MyController"> <ul> <li class="thumb" ng-repeat="item in items"> <span profile ng-click="getItem(item.id)"></span>

我有一个AngularJS应用程序,在该应用程序中,我从使用
ng controller
指令定义控制器的视图文件开始

myview.html

<div ng-controller="MyController">
   <ul>
     <li class="thumb" ng-repeat="item in items">
         <span profile ng-click="getItem(item.id)"></span>
     </li>      
   </ul> 
</div>
<div>
   <ul>
     <li class="thumb" ng-repeat="item in items">
         <span profile ng-click="getItem(item.id)"></span>
     </li>      
   </ul> 
</div>
这是可行的,但尽管一开始它似乎帮助我将视图与控制器解耦,但感觉有些不对劲,因为我的视图中仍然有对范围成员变量的引用,并且这些变量与控制器相关联


我是不是遗漏了什么?在我的routeProvider中而不是在我的模板中指定MyController,我从中获得了什么?

就所有实际目的而言,我不相信你从中获得了什么,除了遵守AngularJS中定义路线、视图和控制器的标准方法


如果我们考虑编程原则和MVC,那么您的视图现在对控制器一无所知,它只依赖于模型(角度上是
$scope
),这在MVC体系结构中是正常的

就所有实际目的而言,我不相信你从中获得了什么,除了遵循AngularJS中定义路线、视图和控制器的标准方法


如果我们考虑编程原则和MVC,那么您的视图现在对控制器一无所知,它只依赖于模型(角度上是
$scope
),这在MVC体系结构中是正常的

就所有实际目的而言,我不相信你从中获得了什么,除了遵循AngularJS中定义路线、视图和控制器的标准方法


如果我们考虑编程原则和MVC,那么您的视图现在对控制器一无所知,它只依赖于模型(角度上是
$scope
),这在MVC体系结构中是正常的

就所有实际目的而言,我不相信你从中获得了什么,除了遵循AngularJS中定义路线、视图和控制器的标准方法


如果我们考虑编程原则和MVC,那么您的视图现在对控制器一无所知,它只依赖于模型(角度上是
$scope
),这在MVC体系结构中是正常的

通过在路由中定义控制器,您可以在多个控制器中使用相同的视图(模板)(并传递不同范围的数据)

例如:

.when('/homepage', {
   templateUrl: 'templates/myview.html',
   controller: 'MyController'
})
.when('/list', {
   templateUrl: 'templates/myview.html',
   controller: 'MyListController'
})

通过在路由中定义控制器,可以在多个控制器中使用相同的视图(模板)(并传递不同范围的数据)

例如:

.when('/homepage', {
   templateUrl: 'templates/myview.html',
   controller: 'MyController'
})
.when('/list', {
   templateUrl: 'templates/myview.html',
   controller: 'MyListController'
})

通过在路由中定义控制器,可以在多个控制器中使用相同的视图(模板)(并传递不同范围的数据)

例如:

.when('/homepage', {
   templateUrl: 'templates/myview.html',
   controller: 'MyController'
})
.when('/list', {
   templateUrl: 'templates/myview.html',
   controller: 'MyListController'
})

通过在路由中定义控制器,可以在多个控制器中使用相同的视图(模板)(并传递不同范围的数据)

例如:

.when('/homepage', {
   templateUrl: 'templates/myview.html',
   controller: 'MyController'
})
.when('/list', {
   templateUrl: 'templates/myview.html',
   controller: 'MyListController'
})

如果不同的控制器履行相同的合同(模板要求),则可以对同一模板使用不同的控制器。一个示例用法是拥有一个视图,其中具有不同角色的用户具有不同的功能。每个角色都可以有一个单独的控制器。如果同一模板中的控制器履行了相同的合同(模板要求),则可以对同一模板使用不同的控制器。一个示例用法是拥有一个视图,其中具有不同角色的用户具有不同的功能。每个角色都可以有一个单独的控制器。如果同一模板中的控制器履行了相同的合同(模板要求),则可以对同一模板使用不同的控制器。一个示例用法是拥有一个视图,其中具有不同角色的用户具有不同的功能。每个角色都可以有一个单独的控制器。如果同一模板中的控制器履行了相同的合同(模板要求),则可以对同一模板使用不同的控制器。一个示例用法是拥有一个视图,其中具有不同角色的用户具有不同的功能。每个角色都可以有一个单独的控制器。