AngularJS變量及過濾器Filter用法分析
本文實(shí)例講述了AngularJS變量及過濾器Filter用法。分享給大家供大家參考,具體如下:
1. 關(guān)于部分變量的操作
設(shè)置變量:
ng-init="hour=14" //設(shè)置hour變量在DOM中 使用data-ng-init 更好些 $scope.hour = 14; //設(shè)置hour變量在js中
使用變量:
(1) 如果是在DOM 相關(guān)的 ng-*** 屬性里 直接寫變量名
如:
<p ng-show="hour > 13">I am visible.</p>
(2) 如果是在控制器HTML 中但是不在 ng屬性里
使用{{變量名}}
如:
{{hour}}
(3) 當(dāng)然第三種就是上面的 在js中使用
加上對(duì)象名 $scope.
$scope.hour
(4) 在表單控件中 ng-model中的變量 可以直接
同時(shí)在 html 中 使用 {{變量名}}
<p>Name: <input type="text" ng-model="name"></p> <p>You wrote: {{ name }}</p>
還可以通過 ng-bind 屬性進(jìn)行變量綁定
<p>Name: <input type="text" ng-model="name"></p> <p ng-bind="name"></p>
(5) 可以直接在ng的屬性 或變量中使用表達(dá)式
會(huì)自動(dòng)幫你計(jì)算 需要符合js語法
ng-show="true?false:true" {{5+6}} <div ng-app="" ng-init="points=[1,15,19,2,40]"> <p>The third result is <span ng-bind="points[2]"></span></p> </div>
2. js中的變量循環(huán)
<div ng-app="" ng-init="names=['Jani','Hege','Kai']"> <ul> <li ng-repeat="x in names"> {{ x }} </li> </ul> </div>
3.變量的過濾 filter
Filter Description
currency 以金融格式格式化數(shù)字
filter 選擇從一個(gè)數(shù)組項(xiàng)中過濾留下子集。
lowercase 小寫
orderBy 通過表達(dá)式將數(shù)組排序
uppercase 大寫
如:
<p>The name is {{ lastName | uppercase }}</p>
當(dāng)然多個(gè)函數(shù)封裝可以使用 |
<p>The name is {{ lastName | uppercase | lowercase }}</p> //排序函數(shù)的使用 <ul> <li ng-repeat="x in names | orderBy:'country'"> {{ x.name + ', ' + x.country }} </li> </ul> //通過輸入內(nèi)容自動(dòng)過濾顯示結(jié)果 <div ng-app="" ng-controller="namesCtrl"> <p><input type="text" ng-model="test"></p> <ul> <li ng-repeat="x in names | filter:test | orderBy:'country'"> {{ (x.name | uppercase) + ', ' + x.country }} </li> </ul> </div>
names | filter:test | orderBy:'country'
就是將names數(shù)組中的項(xiàng) 按照 test表單值進(jìn)行 篩選
然后以 names中的子元素 country 進(jìn)行排序
自定義過濾器:
<!DOCTYPE html> <html ng-app="HelloApp"> <head> <title></title> </head> <body ng-controller="HelloCtrl"> <form> <input type="text" ng-model="name"/> </form> <div>{{name|titlecase}}</div> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <script type="text/javascript"> // 編寫過濾器模塊 angular.module('CustomFilterModule', []) .filter( 'titlecase', function() { return function( input ) { return input.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();}); } }); // 實(shí)際展示模塊 // 引入依賴的過濾器模塊 CustomFilterModule angular.module('HelloApp', [ 'CustomFilterModule']) .controller('HelloCtrl', ['$scope', function($scope){ $scope.name = ''; }]) </script> </body> </html>
希望本文所述對(duì)大家AngularJS程序設(shè)計(jì)有所幫助。
相關(guān)文章
在AngularJS框架中處理數(shù)據(jù)建模的方式解析
這篇文章主要介紹了在AngularJS框架中處理數(shù)據(jù)建模的方式,作者同時(shí)也對(duì)AngularJS使用過程中的一些"坑"作了介紹,需要的朋友可以參考下2016-03-03angular 實(shí)現(xiàn)下拉列表組件的示例代碼
這篇文章主要介紹了angular 實(shí)現(xiàn)下拉列表組件的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03angularJS利用ng-repeat遍歷二維數(shù)組的實(shí)例代碼
本篇文章主要介紹了angularJS利用ng-repeat遍歷二維數(shù)組的實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06Angular7中創(chuàng)建組件/自定義指令/管道的方法實(shí)例詳解
這篇文章主要介紹了在angular7中創(chuàng)建組件/自定義指令/管道的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-04-04詳解Angular組件數(shù)據(jù)不能實(shí)時(shí)更新到視圖上的問題
這篇文章主要為大家介紹了Angular組件數(shù)據(jù)不能實(shí)時(shí)更新到視圖上的問題詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10使用typescript開發(fā)angular模塊并發(fā)布npm包
本篇文章主要介紹了使用typescript開發(fā)angular模塊并發(fā)布npm包,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04Angular 根據(jù) service 的狀態(tài)更新 directive
Angular JS (Angular.JS) 是一組用來開發(fā)Web頁面的框架、模板以及數(shù)據(jù)綁定和豐富UI組件。本文給大家介紹Angular 根據(jù) service 的狀態(tài)更新 directive,需要的朋友一起學(xué)習(xí)吧2016-04-04AngularJS的ng-repeat指令與scope繼承關(guān)系實(shí)例詳解
這篇文章主要介紹了AngularJS的ng-repeat指令與scope繼承關(guān)系,結(jié)合實(shí)例形式通過ng-repeat指令詳細(xì)分析了scope繼承關(guān)系,需要的朋友可以參考下2017-01-01