与直接使用事件处理程序相比,使用数据绑定主要有3个优点。第一,模型和控制器逻辑是完全独立于UI的。在之前的代码中中,可以添加另一个到变量username的UI元素,或者也可以创建另一个元素,只在定义username时显示,这些改动都不需要改变控制器代码。控制器代码可以加载数据,并向HTML提供应用编程接口(API),用于操作数据、加载和保存文档安全数据,而UI中展示数据的方式则可以在HTML和层叠样式表(CSS)中实现。
  由AngularJS提供的视图和控制器之间的清晰分离在单人项目中是非常有价值的,但是请耐心等待看它能为跨领域团队完成什么。在生产团队中,可能有至少一个人专注于用户界面/用户体验(UI/UX)。换句话说,可能有一个或多个开发者负责从服务器抓取数据(也称为模型)到浏览器,有一个或多个设计者负责将数据展示给用户。
  没有AngularJS,在模型和视图之间的胶水代码是一个灰色区域。实际上,最终将会出现开发者和设计者相互踩脚指的情况。一个经典的噩梦场景是:当设计师浏览并调整所以的CSS类时,通常需要更新胶水代码确保它正在使用正确的CSS类创建元素。即使是强大的MVC框架,例如BackboneJS,分离代码和设计也几乎是不可能的。此时就需要让设计师调整JavaScript或者让开发者决定如何渲染数据。
  通过文档安全数据绑定,设计师不需要编写JavaScript代码,开发者也不需要调整HTML。相反,在一个理想的世界中,这两个角色将通过良好的定义的API进行交互,开发者负责编写JavaScript函数和公开控制器中的变量,设计师负责在HTML中使用指令绑定这些它们。
  另外,文档安全数据绑定还允许在声明式语言(例如HTML)中编写更多的代码,在命令式语言(例如JavaScript)中编写较少的代码。一般来说,命令式编程涉及为计算机提供如何执行任务的精确质量。与此相对,声明式编程允许指定希望发生的事情,并且允许计算机优化如何完成的细节。或者换句话说,在命令式编程中使用的是动词,而在声明式语言中,例如HTML,编写的只是名词。命令式和声明式编程的准确技术定义更加负责也易于引起争辩,但是知道命令式编程语法使高级概念(例如数据的图形渲染)更加简单就足够了。
  声明式语言倾向于更加简洁,并且更有利于UI/UX开发,因为从根本上讲UI是基于含有相关潜在的操作的对象构建的。这意味着与其显式地编写代码构造UI对象,不如定义希望如何构造对象,并让浏览器处理渲染细节。
  通过使用AngularJS数据绑定,HTML不仅可以定义UI结构,还可以定义UX结构。因为UX(决定用户可以采用的具体操作)被定义在HTML中,不需要与事件处理程序绑定代码(过于冗长而且容易填满全局作用域)掺和在一起。
  最后,AngularJS作用域为组织代码提供了一个简洁框架。Ng-controller指令每次将创建一个HelloController新实例,所以UI可以在不同的位置重用控制器,而不必对JavaScript做出改变。

关于TeamDoc软件:

TeamDoc是基于服务器/客户端架构的轻量级文件管理软件。TeamDoc将文件集中加密存储在您单位自己的服务器中,员工使用TeamDoc客户端访问服务器,从而获得与自己权限相关的权限:登入后与“我的电脑”界面类似,可以看到自己该看的文件,编辑自己能编辑的文档,对于能看到的文件,还可以细分文档权限,进而做到能看不能拷,能看不能截屏等功能,多种权限灵活设置,在线协同编辑、全文搜索、日志与版本追踪,快速构建企业文档库。告别假大空,我们提供值得您选择的、易用的、可用的文档管理软件。现在就访问TeamDoc首页

TeamDoc软件界面(点击可放大)

版权所有:南京网亚计算机有限公司,本文链接地址: 文档安全数据绑定的作用