AngularJS 让人爱不释手的八种功能
八种AngularJS让人爱不释手的功能分享给大家,供大家参考,具体内容如下
第一迭代输出之ng-repeat标签
ng-repeat让tableulol等标签和js里的数组完美结合
<ul> <ling-repeat="personinpersons"> {{person.name}}is{{person.age}}yearsold. </li> </ul>
你甚至可以指定输出的顺序:
<ling-repeat="personinpersons|orderBy:'name'">
第二动态绑定之ng-model标签
任何有用户输入,只要是有值的html标签,都可以动态绑定js中的变量,
而且是动态绑定。
<inputtype="text"ng-model='password'>
对于绑定的变量,你可以使用{{}}直接引用
<span>youinputpasswordis{{password}}</span>
如果你熟悉fiter,你可以很容易的按你的需要格式输出
<span>{{1288323623006|date:'yyyy-MM-ddHH:mm:ssZ'}}</span>
第三绑定点击事件之ng-click事件
使用ng-click你可以很容易的为一个标签绑定点击事件。
<buttonng-click="pressMe()"/>
当然前提是你要在$scope域中定义的自己的pressMe方法。
和传统的onclick方法不同,你甚至可以为ng-click方法传递一个对象,就像这样:
<ul> <ling-repeat="personinpersons"> <buttonng-click="printf(person)"/> </li> </ul>
当然还有ng-dblclick标签
第四分支语句之ng-switchon、ng-if/ng-show/ng-hide/ng-disabled标签
分支语句让你在界面上都可以写逻辑判断。
<ul> <ling-repeat="personinpersons"> <spanng-switchon="person.sex"> <spanng-switch-when="1">youareaboy</span> <spanng-switch-when="2">youareagirl</span> </span> <spanng-if="person.sex==1">youmaybeafather</span> <spanng-show="person.sex==2">youmaybeamother</span> <span> pleaseinputyourbaby'sname:<inputtype="text"ng-disabled="!person.hasBaby"/> </span> <span> </li> </ul>
第五校验语法之ng-trimng-minlengthng-maxlengthrequiredng-pattern等标签
表单中的输入框,你可以使用上面的标签来实现对用户输入的校验。
从字面意思上你已经知道了它们的意思。
<formname="yourForm"> <inputtype="text"name="inputText"requiredng-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是为下拉框专门打造的标签。
<selectng-model="yourSelected"ng-options="person.idasperson.nameinpersons"></select>
下拉框中显示的是person.name,当你选中其中一个的时候,你可以通过yourSelected得到你选中的person.id.
第七控制css之ng-style标签
ng-style帮你轻松控制你的css属性
<spanng-style="myColor">yourcolor</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){ //doanythingwhatyouwant; }) .error(function(response,status,headers,config){ //doanythingwhatyouwant; });
如果你是POST请求,params里的数据会帮你拼到url后面,data里的数据会放到请求体中。
看完之后是不是已经爱不释手了,那就好好的把这些应用到自己的项目中吧!