我之前已经学习了AngularJS的基本用法,所以我将在学习PDF的同时学习表达式。
Angularjs中的表达式与js中的表达式不完全相同。
首先,它的表达式只有放在{{}}中才能使用。其次,与javascript中的表达式概念相比,它有以下不同之处:
1不同的范围
在javascript中,默认函数是window,但在angularJs中不同。它使用$scope控件来执行操作。
2允许未定义的值
在angularjs中,如果使用未定义的表达式,将不会出现错误,并且将直接返回空值。
3过滤器
您可以在表达式中使用| pipeline命令添加筛选器,类似于UNIX命令行。
4美元符号
用于区分角度方法和用户定义的方法。
让我们看一个小代码:
!doctype html html ng-app head meta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8 '/script src=' http :3358 apps . bdimg.com/libs/angular . js/1 . 2 . 16/angular . min . js '/script/head body div ng-controller=' CTL ' name : input ng-model=' name ' type=' text ' button ng-click=' reset()' reset/button br { { name } } br hello!{{test}} br筛选器: {{name |大写}} /div脚本类型='text/javascript '函数CTL($ scope){ var str=' init ';$ scope.name=str$ scope . reset=function(){ $ scope . name=str;}} /script /body/html通过reset触发reset方法,重置name变量的内容;
表达式中引用了未定义的测试,但没有报错,默认显示为null—— {{test}}
最后,使用过滤器将表达式中的name值转换为大写。—— {{name |大写}}
运行结果:
以上是AngularJS表达式的数据整理,后续继续补充相关数据。感谢大家的支持!