`

为什么要用AngularJS

 
阅读更多
在学习一门技术之前,总得清楚这个技术解决了什么问题,也即它产生的背景和应用的市场。就像Spring这么火的框架,我觉得它的IOC和AOP是一个非常不错的理念,提出了依赖注入(解决对象依赖关系的管理)和面向切面编程(更小的代理使用于方法上)。

我记得自己在学习WEB编程时,前端用的是Jquery,使用Jquery一般而言还是比较简单的,至少在应用的时候,太高深的javascript研究我不太会,毕竟作为后台开发人员来讲,会用Jquery就ok了。使用Jquery有一套思路:
1)获取DOM元素($(#xxx));
2) 绑定事件,$("#xxx").bind("click",function(){});
3) DOM元素修改(val(),html())。

上面的模型基本上就是;元素-->事件-->Ajax请求返回数据-->元素更新。

只要你使用Jquery,上面的步骤基本是相同,代码的复用程序不高,就算有很多的插件,你还是要写相同一大堆的东西。而AngularJS提出了另一种不同的前端架构思想:MVC。

是的,MVC不止用在后端,它也应用在前端。在使用AngularJS时,请忘记之前Jquery的使用方法。其实这种思想是这样的:
1)关注整个功能设计,而不是一上来就考虑页面的设计,再绑定事件等等(Jquery的套路);
2)分解任务,V表示的是页面,它只会用最简单的形式来写页面;M表示的是模型,模型的数据往往会从服务端获取,一般走Http请求;C表示的控制器,它连接V和M,AngularJS有一个很好的功能就是双向绑定,绑定元素的改变会立即反映到页面上。

总体来讲,知道了AngularJS的思想之后,再写几个例子来练习一下,基本会明白它的概念和思想以及用法,重点的是要转换之前Jquery的用法。
分享到:
评论

相关推荐

    angularjs下拉树控件

    6. **集成下拉功能**:为了实现下拉效果,你可以使用AngularJS UI Bootstrap的`<select>`指令,或者自定义一个下拉框,将树的数据绑定到下拉框中。当用户选择一个节点时,将其值设置为所选节点的标识符,并更新UI以...

    如何使用AngularJs打造权限管理系统【简易型】

    首先,要了解什么是权限管理系统,它是指在软件系统中用于管理用户权限、角色、权限分配等功能的一套机制。一个良好的权限管理系统能够有效地控制不同用户对系统的访问权限,确保数据的安全性。 ### 引言 文章以...

    AngularJS中的Directive自定义一个表格

    首先,我们要明确什么是AngularJS中的Directive。Directive是AngularJS的最小指令性组件,它可以通过添加属性、元素、注释、或者类来改变DOM元素的行为。通过使用Directive,我们可以创建可重用的、可定制的、封装好...

    AngularJS的脏检查深入分析

    这也是为什么在使用AngularJS时,如果不需要执行特定的监听逻辑,可以省略监听函数,这样可以减少不必要的性能损耗。 在了解了脏检查机制之前,必须先掌握AngularJS的双向数据绑定机制。双向数据绑定意味着用户界面...

    什么是 AngularJS?AngularJS简介

    什么是 AngularJS? AngularJS 是一个为动态WEB应用设计的结构框架。它能让你使用HTML作为模板语言,通过扩展HTML的语法,让你能更清楚、简洁地构建你的应用组件。它的创新点在于,利用 数据绑定 和 依赖注入,它使你...

    ng-book (the complete book on angularjs)

    除了基础知识,本书可能还会涉及如何建立开发环境,这对于使用AngularJS进行开发至关重要。AngularJS通常与Node.js、Bower、npm等现代Web开发工具一起使用,这些工具可以自动化和简化开发过程,比如依赖管理、前端...

    AngularJS中transclude用法详解

    1. 在指令定义中使用transclude属性:transclude属性设置为true,告诉AngularJS这个指令需要使用transclude功能。 ```javascript testapp.directive('buttonBar', function() { return { restrict: 'EA', ...

    程序员面试刷题的书哪个好-angularjs-interview-questions:AngularJS面试问题

    程序员面试刷题的书哪个好AngularJS 面试题示例(更新至 v1.7.x) 如果您喜欢该项目,请单击。 拉取请求受到高度赞赏。...问:为什么要使用 AngularJS? 选择 AngularJS 作为 Web 开发框架的原因如下: 它

    Learn With AngularJS Bootstrap and ColdFusion pdf 0分

    通过这些知识点,我们可以了解到书中将要介绍的技术栈,以及为什么选择这些技术来构建一个任务管理器应用。通过实际案例的学习,读者可以获得AngularJS开发和前端设计的实践经验,并通过作者分享的真实经历,更快地...

    项目中用Yeoman构建AngularJS

    在我们的案例中,"项目中用Yeoman构建AngularJS",意味着我们要使用一个专门针对AngularJS的Yeoman Generator。这个Generator通常会为你创建一个包含基本目录结构、配置文件和依赖的AngularJS项目。常见的AngularJS ...

    基于AngularJS+HTML+Groovy实现登录功能

    AngularJS是一款客户端MVC的javascript框架,而客户端MVC代表未来架构(为什么要使用MVC+REST+CQRS架构),如果你有Struts或SpringMVC等后端MVC框架编程经验,学习Angular会很快,基本是按照同一个MVC思路实现的,本文...

    ng-book.pdf angularjs权威书 原版PDF

    ### AngularJS权威指南...通过阅读本书,读者不仅可以学到如何使用AngularJS构建高质量的应用程序,还能了解到许多实用的最佳实践和技术技巧。无论是对于初学者还是有一定经验的开发者来说,这都是一本不可多得的好书。

    浅谈angularjs module返回对象的坑(推荐)

    这就是为什么在引用模块时要保证依赖的正确性。 在AngularJS中,通常会通过模块的数组调用来避免这个坑。在引用模块时,即使你不想添加任何依赖项,也应该显式地传递空数组[''],这样可以确保你得到的模块是之前...

    AngularJS在IE下取数据总是缓存问题的解决方法

    然而,在使用AngularJS开发应用时,尤其是在旧版本的Internet Explorer (IE) 浏览器中,开发者常常会遇到数据取回(特别是GET请求)时数据被缓存的问题。本文将详细探讨这一问题的原因以及如何利用AngularJS框架本身...

    angularjs-dynamic-tree:AngularJS 动态树

    我正在寻找一棵树,它可以做类似事情(你会注意到 css 和主题是可以互换的),但我想要一个有角度的树,这样我就可以做一些非常酷的 AngularJS双向绑定,但可以轻松连接到事件驱动系统(更不用说能够通过过滤源 ...

    [Mastering.Web.Application.Development.with.AngularJS(2013.8)].pdf

    《掌握Web应用开发:使用AngularJS》不仅为读者提供了AngularJS的知识体系,而且还通过一个完整的实战项目,展示了如何把理论应用到实际开发中去。这本书非常适合那些希望通过实践学习AngularJS的开发者,无论你是...

    turn-calendar:AngularJS的类似日历的组件

    为什么要打开日历? 如果您想要一个本机的AngularJS指令,请使用Turn Calendar: 行为类似Google Analytics(分析)日历 可以进行日期范围选择的日历 可配置的优先范围预设按钮 API支持选择开始日期和结束日期 ...

Global site tag (gtag.js) - Google Analytics