Angular(一)——开场小谈

       AngularJS是为了克服HTML在构建应用上的不足而设计的。HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了。
       通常,我们是通过以下技术来解决静态网页技术在构建动态应用上的不足:
(1) 类库 ——类库是一些函数的集合,它能帮助我们写WEB应用。起主导作用的是你的代码,由你来决定何时使用类库。类库有:jQuery等;
(2)框架 —— 框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里框架是起主导作用的,由它来根据具体的应用逻辑来调用你的代码。框架有:knockout、sproutcore等。
       AngularJS使用了不同的方法,它尝试去补足HTML本身在构建应用方面的缺陷。AngularJS通过使用我们称为标识符(directives)的结构,让浏览器能够识别新的语法。例如:
使用双大括号{{}}语法进行数据绑定;
使用DOM控制结构来实现迭代或者隐藏DOM片段;
支持表单和表单的验证;
能将逻辑代码关联到相关的DOM元素上;
能将HTML分组成可重用的组件。

Angular4大核心特性:MVC、模块化、指令系统、双向数据绑定

一、MVC是什么?

起源:1979年,Trygve Reenskaug第一次正式提出了MVC模式。
Model:数据模型层
View:视图层,负责展示
Controller:业务逻辑和控制逻辑
好处:职责清晰,代码模块化。

二、为什么需要MVC?

(1)代码规模越来越大,切分职责是大势所趋;
(2)为了复用;
(3)为了后期维护方便:修改一块功能不影响其他功能。

三、如何使用Controller?

1.Controller的实现方式一

Controller的实现方式一

问题:如果“视图1”和“视图2”根本没有任何逻辑,“控制器”的角色就很尴尬!

2.Controller的实现方式二

Controller的实现方式二

问题:如果“控制器1”和“控制器2”中有相同的方法怎么办?

3.Controller的实现方式三

Controller的实现方式三

注:把通用的方法抽成一个服务,然后用控制器去调用它。

四、Controller使用过程中的注意点

(1)不要试图去复用Controller,一个控制器一般只负责一小块视图。
(2)不要在Controller中操作DOM,这并不是控制器的职责。
(3)不要在Controller中做数据格式化,angular中有很好用的表单控件。
(4)不要在Controller中做数据过滤操作,angular有$filter服务。
(5)一般来说,Controller是不会互相调用的,控制器之间的交互会通过事件进行。

       学习是一件很快乐的事,这种快乐来自于你的思考。完成一项学习任务固然重要,但更重要的是在完成的过程中学到了什么,掌握了什么,遇到一些什么问题,为什么会出现这种问题,根源是什么,都有哪些解决方案,什么样的情况适合这个方案。只有在不断的思考,你的能力才会有所提升!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容