angularjs个人见解

angularJS优点

angularJS通过为开发者呈现一个更高层次的抽象来简化应用的开发。

如同其他的抽象技术一样,这也会损失一部分灵活性。并不是所有的应用都适合用AngularJS来做。

AngularJS主要考虑的是构建CRUD应用。(crud增删改查)

幸运的是,至少90%的WEB应用都是CRUD应用。但是要了解什么适合用AngularJS构建,就得了解什么不适合用AngularJS构建。

如游戏,图形界面编辑器,这种DOM操作很频繁也很复杂的应用,和CRUD应用就有很大的不同,它们不适合用AngularJS来构建。

像这种情况用一些更轻量、简单的技术如jQuery可能会更好。

不足:

directive
复杂,上手比较难,看看这些符号和函数就能理解复杂度都多高:

E、A、C、M

自定义指令
1、可以转换成标签 要转换成标签 E
2、可以转换成属性 要转换成属性 A
3、可以转换成注释
4、可以转换成class

终要占用一个元素,尤其是当只想输出文本节点,而同时又必须使用 ng-switch 或 ng-repeat 时。

$resource 功能稍弱
缺少很多必要的 HTTP 方法,需要自定义;缺少全局配置;内部 $http 的 PATCH 方法对低版 IE 不兼容;

循环

//循环取students中的数据 交给 stu
<li ng-repeat="stu in students">
<li>{{stu.s_id}}</li>
<li>{{stu.s_name}}</li>
<li>{{stu.s_class}}</li>
</i>

input 的name 要和 input的ng-model名一样

验证:

required //非空验证
ng-show = "表单name.input的name.$error.required"

ng-pattern="正则表达式"
ng-show = "表单name.type的name.$error.pattern"

自定义指令
1、可以转换成标签 要转换成标签 E
2、可以转换成属性 要转换成属性 A
3、可以转换成注释
4、可以转换成class
directive//自定义指令
myApp.directive("指令名"函数(){
return{
restrict:"E", //要转换的类型
// require:"ngModel", //指定在改属性所在的标签中必须加入ng-model
replace:true, //替换
template:"<标签>自定义</标签>" //最后要转换成的模板
}
});
//属性
myApp.directive("指令名"函数(){
return{
restrict:"A", //要转换的类型
require:"ngModel", //指定在改属性所在的标签中必须加入ng-model

replace:true, //替换
template:"<标签>自定义</标签>" //最后要转换成的模板
}
});

//filter 过滤器
myApp.directive("指令名"函数($filter){
return{
restrict:"E", //要转换的类型
replace:true, //替换
template:function(ele,attr){
表达式
//时间过滤
$filter("data")(xx.getTime(),attr.dateFormat)//attr.dateFormat获取属性值
return:标签
}
}
});

自定义过滤器

myApp.filter("过滤器名",function(){
return function(xx){
return xx.toUpperCase(); //toUpperCase()小写转换大写 toLowerCase();大转小
}
});

<input type="text" ng-model="sss" />
{{sss | 过滤器名}}

时间: 2024-08-13 23:36:16

angularjs个人见解的相关文章

Angularjs,WebAPI 搭建一个简易权限管理系统

Angularjs,WebAPI 搭建一个简易权限管理系统 Angularjs名词与概念(一) 1. 目录 前言 Angularjs名词与概念 权限系统原型 权限系统业务 数据库设计和实现 WebAPI项目主体结构 Angularjs前端主体结构 2. 前言 Angularjs开发CRUD类型的Web系统生产力惊人,与jQuery,YUI,kissy,Extjs等前端框架区别非常大,初学者在学习的过程中容易以自己以往的经验来学习Angularjs 往往走入误区,最典型的特征是在的开发过程中,使用

Angularjs directive全面解读(1.4.5)

说到Angularjs directive即指令,可以这么说Angularjs的灵魂就是指令,学会Angularjs指令那么你的Angularjs的武功就修炼了一半了,当然这只是鄙人的一点点独到见解,废话不多说,以下是Angularjs 指令的运用及源码实现解读. 学习Angularjs directive那么我们要带3个问题来学习: 1. 什么是angular 指令?2. 指令如何定义存储的?3. 指令如何编译运行的? 1.首先第一点解读什么是指令: At a high level, dire

AngularJs的理解

随着时代的不断进步,各种各样的开发理念与开发框架不断的提出与发展,目前来说,除了游戏,QQ,office这类软件之外,新出的一些软件应用开始出现两个方向,一个是以web为主的webApp,一个是以移动端为主的移动APP,且,现有也有一种声音认为webapp早晚会取代移动端原生APP,从而一统计算机软件的应用方式,暂且不论这种说法是否会成为现实,webapp的火爆可见一斑. 下面是我对angularJS的一些见解: Angular 是一款主旋律的 MVVM 框架,框架和传统的库不同: 类库 是一些

关于AngularJs中监听事件及脏循环的理解

可能很多刚入行或者刚学习的前端对于AngularJs中的一些事件或者概念感觉不理解或者没有思路,今天让我们一起来剖析一下AngularJs中的一些事件. AngularJs中对于的监听事件会用到一个scope函数$watch,它包含了三个参数,首先我们在概念上来了解一下: $watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你. $watch(watchExpression, listener, objectEquality); 每个参数的说明如下: watchE

使用Angularjs需要注意的一些东西

写在前面——真心没时间精力仔细总结了,先放这儿,有空再细化~~~~~~~~ 近期一直在玩Angularjs,不得不说,相对于Knockout,Angularjs这一MVVM框架更强大,也更复杂,各种教程网上到处都是,不过真正用到项目的时候会遇到各种坑. 这儿有一篇Think in Angularjs主要讲的是Angularjs思想等,对于我们用过若干年Jquery的人来说有些思想确实和Angularjs有不一样,不过可能有些方面有点过于理想化了,或者说如果要做到Think in Angularj

使用ASP.NET MVC和AngularJS的Web模块化管理

快速浏览标题便了解到本文要谈到公开资源平台,该平台允许快速,轻松地创建一个管理网络,并不需要在风格,导航,解决方案架构和其它跟主要任务无关的琐事上花费过多的时间. 平台视觉图和其中一块模板:(见附图一) 很长一段时间里,我们使用WPF技术模块化管理应用.我们做出的决定是将此管理迁移到网站中.最后我们得出了2个不同的产品:第一个:平台,就是这篇文章致力于介绍的,第二个是用于电子商务应用程序开发使用的集合模块. 技术运用于:(见附图二) 我们决定使用这些技术都是我们广泛应用微软产品的经验结果. 我们

angularJs中关于ng-class的三种使用方式说明

在开发中我们通常会遇到一种需求:一个元素在不同的状态需要展现不同的样子. 而在这所谓的样子当然就是改变其css的属性,而实现能动态的改变其属性值,必然只能是更换其class属性 这里有三种方法: 第一种:通过数据的双向绑定(不推荐) 第二种:通过对象数组 第三种:通过key/value 下面简单说下这三种: 第一种:通过数据的双向绑定 实现方式: function changeClass(){   $scope.className = "change2"; } <div clas

Node.js 使用angularjs取得Nodejs http服务端返回的JSON数组示例

server.js代码: // 内置http模块,提供了http服务器和客户端功能(path模块也是内置模块,而mime是附加模块) var http=require("http"); // 创建服务器,创建HTTP服务器要调用http.createServer()函数,它只有一个参数,是个回调函数,服务器每次收到http请求后都会调用这个回调函数.服务器每收到一条http请求,都会用新的request和response对象触发请求函数. var server=http.createS

Bootstrap + AngularJS+ Ashx + SQL Server/MySQL

去年年底12月,为适应移动端浏览需求,花了1个月时间学习Bootstrap,并将公司ASP网站重构成ASP.NET. 当时采取的网站架构: Bootstrap + jQuery + Ashx + SQL Server 时间紧,没人带,只能硬着头皮,最后如期完成,但是也遗留了几个问题. 问题: 1.页面查询条件太复杂,太多的checkbox,jQuery操作DOM虽然方便,但是组合成json提交给后端还是比较麻烦,有没有天然支持json的前端框架或者脚本语言? html控件做的任何修改,都自动保存