AngularJS 让人爱不释手的八种功能


Posted in Javascript onMarch 23, 2016

八种AngularJS让人爱不释手的功能分享给大家,供大家参考,具体内容如下

第一 迭代输出之ng-repeat标签

ng-repeat让table ul ol等标签和js里的数组完美结合

<ul>
<li ng-repeat="person in persons">
{{person.name}} is {{person.age}} years old.
</li>
</ul>

你甚至可以指定输出的顺序:

<li ng-repeat="person in persons | orderBy:'name'">

第二 动态绑定之ng-model标签

任何有用户输入,只要是有值的html标签,都可以动态绑定js中的变量,
而且是动态绑定。

<input type="text" ng-model='password'>

对于绑定的变量,你可以使用{{}} 直接引用

<span>you input password is {{password}}</span>

如果你熟悉fiter,你可以很容易的按你的需要格式输出

<span>{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}</span>

第三 绑定点击事件之ng-click事件

使用ng-click你可以很容易的为一个标签绑定点击事件。

<button ng-click="pressMe()"/>

当然前提是你要在$scope域中定义的自己的pressMe方法。

和传统的onclick方法不同,你甚至可以为ng-click方法传递一个对象,就像这样:

<ul>
<li ng-repeat="person in persons">
<button ng-click="printf(person)"/>
</li>
</ul>

当然还有ng-dblclick标签

第四 分支语句之ng-switch on、ng-if/ng-show/ng-hide/ng-disabled标签

分支语句让你在界面上都可以写逻辑判断。

<ul>
<li ng-repeat="person in persons">
<span ng-switch on="person.sex">
<span ng-switch-when="1">you are a boy</span>
<span ng-switch-when="2">you are a girl</span>
</span>
<span ng-if="person.sex==1">you may be a father</span>
<span ng-show="person.sex==2">you may be a mother</span>
<span>
please input your baby's name:<input type="text" ng-disabled="!person.hasBaby"/>
</span>
<span>
</li>
</ul>

第五 校验语法之ng-trim ng-minlength ng-maxlength required ng-pattern 等标签

表单中的输入框,你可以使用上面的标签来实现对用户输入的校验。
从字面意思上你已经知道了它们的意思。

<form name="yourForm">
<input type="text" name="inputText" required ng-trim="true" ng-model="userNum" ng-pattern="/^[0-9]*[1-9][0-9]*$/" ng-maxlength="6" maxlength="6"/>
</form>

你可以通过 $scope.yourForm.inputText.$error.required 来判断输入框是否为空
你可以通过 $scope.yourForm.inputText.$invalid 来判断输入的内容是否满足ng-pattern,ng-maxlength,maxlength
你通过$scope.userNum获得的输入内容是去掉前后空白的,因为ng-trim的存在。

第六 下拉框之ng-options标签

ng-options是为下拉框专门打造的标签。

<select ng-model="yourSelected" ng-options="person.id as person.name in persons"></select>

下拉框中显示的是person.name,当你选中其中一个的时候,你可以通过yourSelected得到你选中的person.id.

第七 控制css之ng-style标签

ng-style帮你轻松控制你的css属性

<span ng-style="myColor">your color</span>

你可以通过给myColor赋值的形式来改变你想要的效果,就像这样:

$scope.myColor={color:'blue'};
$scope.myColor={cursor: 'pointer',color:'blue'};

第八 异步请求之$http对象

AngularJS 提供了一个类似jquery的$.ajax的对象,用于异步请求。
在AngularJS中对异步操作是推崇至极的,所以$http的操作都是异步的不像jquery.ajax里还提供了async参数。

$http({method : 'POST',params : { id:123}, data:{name:'john',age:27}, url : "/mypath"})
.success(function(response, status, headers, config){
//do anything what you want;
})
.error(function(response, status, headers, config){
//do anything what you want;
});

如果你是POST请求,params里的数据会帮你拼到url后面,data里的数据会放到请求体中。

看完之后是不是已经爱不释手了,那就好好的把这些应用到自己的项目中吧!

Javascript 相关文章推荐
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
Jan 29 Javascript
javascript event 事件解析
Jan 31 Javascript
jQuery使用动态渲染表单功能完成ajax文件下载
Jan 15 Javascript
node.js中的fs.stat方法使用说明
Dec 16 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
Nov 23 Javascript
layer实现弹窗提交信息
Dec 12 Javascript
Angular2学习教程之TemplateRef和ViewContainerRef详解
May 25 Javascript
Angularjs 手写日历的实现代码(不用插件)
Oct 18 Javascript
最实用的JS数组函数整理
Dec 05 Javascript
微信小程序wepy框架笔记小结
Aug 08 Javascript
vue2.0 中使用transition实现动画效果使用心得
Aug 13 Javascript
如何让vue长列表快速加载
Mar 29 Vue.js
java中String类型变量的赋值问题介绍
Mar 23 #Javascript
基于javascript实现泡泡大冒险网页版小游戏
Mar 23 #Javascript
基于javascript实现句子翻牌网页版小游戏
Mar 23 #Javascript
基于jquery编写的放大镜插件
Mar 23 #Javascript
Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
Mar 23 #Javascript
JavaScript弹出对话框的三种方式
Mar 23 #Javascript
JS随机洗牌算法之数组随机排序
Mar 23 #Javascript
You might like
163的邮件用phpmailer发送(实例详解)
2013/06/24 PHP
PHP redis实现超迷你全文检索
2017/03/04 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
jquery 防止表单重复提交代码
2010/01/21 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
在JavaScript并非所有的一切都是对象
2013/04/11 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
jquery使用$(element).is()来判断获取的tagName
2014/08/24 Javascript
辨析JavaScript中的Undefined类型与null类型
2016/05/26 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
jquery 仿锚点跳转到页面指定位置的实例
2017/02/14 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
nodejs实现用户登录路由功能
2019/05/22 NodeJs
在layui下对元素进行事件绑定的实例
2019/09/06 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
python创建线程示例
2014/05/06 Python
Python中除法使用的注意事项
2014/08/21 Python
Python如何实现文本转语音
2016/08/08 Python
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
浅谈python中的占位符
2017/11/09 Python
Python分支语句与循环语句应用实例分析
2019/05/07 Python
Flask框架工厂函数用法实例分析
2019/05/25 Python
python numpy存取文件的方式
2020/04/01 Python
Python用类实现扑克牌发牌的示例代码
2020/06/01 Python
Python实现上下文管理器的方法
2020/08/07 Python
pycharm使用技巧之自动调整代码格式总结
2020/11/04 Python
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
学生自我鉴定模板
2013/12/30 职场文书
致长跑运动员广播稿
2014/01/31 职场文书
经贸韩语专业大学生职业规划
2014/02/14 职场文书
团代会邀请函
2015/02/02 职场文书
综合办公室岗位职责
2015/04/11 职场文书
2015双创工作总结
2015/07/24 职场文书
2019年大学推荐信
2019/06/24 职场文书