不在模板中附加ng-click会破坏MV *的目的吗?

时间:2012-09-19 14:17:09

标签: javascript model-view-controller event-handling angularjs

在angularjs中,有一些例子可以将ng-click处理程序直接附加到html元素,例如<a><button>。请参阅下面的示例(取自有角度的主页示例)。它定义了锚标记的点击处理程序,它将调用archive()

这不符合整个MV *框架吗?将视图定义在视图之外的其他地方不是更好吗?现在似乎有点太多的功能现在附加到锚标签。谁能在这里启发我?

示例代码:

<a href="" ng-click="archive()">archive</a>

1 个答案:

答案 0 :(得分:0)

好吧,你必须在某处附加命令/行为,我认为Angular在视图中以声明方式执行它的方法比使用DOM选择器的JS文件中的命令要好得多,一旦你更改标记就会默默地破坏它们结构/命名。

这就是微软的XAML / C#MVVM框架所做的事情以及关注点的分离在那里是美丽的,我真的希望Angular能够转向那种可以仅仅在标记中封装和附加视图行为的模型。