修改一个类名为abc的div标签节点的内容$(‘div.abc’).html(“hello world!”)
大家都会觉得这语法如此简单,而且容易上手,的确是这样,但是有一个问题(敲黑板,这是重点),如果在整个<body>标签里有若干个类名class为abc的标签,则对应标签里的内容都会改变,在大型项目里,会有成百个class和id,难免会有重复名称,而且当某一天根据需求的变化,前端的代码需要改变了,如:上面的div以及类名abc发生了变化,样式还好改变可以在css里处理但是div里的数据内容不会跟着变化,因为已经找不到$(‘div.abc’),还需要开发人员修改代码,不利于代码的维护性(耦合性问题出现,虽然都会避免问题的出现,但不代表不会出现)。
@H_502_0@2. Angular是模块化的思维模式,这是与Jquery的区别之一。模块化大家应该都明白,简单明了的说就是各干各的,互不影响。AngularJS 通过被称为指令的新属性来扩展 HTML,上例子,如下:
<divng-app="myApp"ng-controller="myCtrl">
名字:<inputng-model="name">
</div>
<script>
varapp = angular.module('myApp',[]);
app.controller('myCtrl',function($scope) {
$scope.name = "John Doe";
});
</script>
ng-app是初始化一个应用程序的指令,模块化必需的指令;
ng-controller是控制器指令,数据的修改必须用到;
ng-model指令实现数据的绑定。
大家现在可能觉得,这个Angular为什么这么麻烦,完全没有Jquery简单,不就是修改个内容吗,还写这么多,一点都不省事。其实恰恰相反,当代码模块化处理的时候,各司其职,互相之间不影响,耦合性低,不管HTML里的标签会变成什么样子,标签里的数据不会发生改变。当前端的内容逐渐丰富,功能越来越多的时候,代码模块化是最佳的选择,而且Augular最大的一个优点就是数据的双向绑定,数据的处理非常简单,开发更容易。我也在逐渐学习Angular和大家一起成长,对于数据的处理,后续会娓娓道来,这篇就先到这里。
原文链接:https://www.f2er.com/angularjs/147641.html