中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

Angularjs中使用Filters詳解
來(lái)源:易賢網(wǎng) 閱讀:1576 次 日期:2016-07-20 16:39:55
溫馨提示:易賢網(wǎng)小編為您整理了“Angularjs中使用Filters詳解”,方便廣大網(wǎng)友查閱!

本文給大家總結(jié)了下在Angularjs的模板、控制器、或者服務(wù)中使用Filters的方法,有需要的小伙伴可以參考下

Filter作用就是接收一個(gè)輸入,通過(guò)某個(gè)規(guī)則進(jìn)行處理,然后給用戶返回處理后的結(jié)果。Filter可以用在模板、控制器、或者服務(wù),同時(shí)也會(huì)很容易自定義一個(gè)Filter過(guò)濾器。

在模板中使用Filter

Filter可以用于在視圖模板中使用一下語(yǔ)法表達(dá)式:

{{ expression | filter }}

例如:格式{{ 12 | currency }}是使用currency的filter用法,讓數(shù)字12過(guò)濾為貨幣形式,結(jié)果是$12.00。

Filter可以應(yīng)用到另一個(gè)過(guò)濾的結(jié)果中。這就是所謂的“chaining”,使用語(yǔ)法如下:

{{ expression | filter1 | filter2 | ... }}

Filter中可能需要參數(shù)。語(yǔ)法為:

{{ expression | filter:argument1:argument2:... }}

例如:格式{{ 1234 | number:2 }}是使用number的filter用法,將數(shù)字1234過(guò)濾為有兩位小數(shù)點(diǎn)的數(shù)字,結(jié)果為:1,234.00 。

在controller、services、directives中使用filter

 你可以在controller、services、directives中使用filter。

為此,你需要將依賴項(xiàng)名稱注入到你的controller/service/directive中:filter;例如:一個(gè)過(guò)濾器是number,你就需要通過(guò)使用依賴注入numberFilter。注入的參數(shù)是一個(gè)函數(shù),該函數(shù)將值作為第一個(gè)參數(shù),然后用第二個(gè)參數(shù)來(lái)篩選參數(shù)。

下面的例子使用了叫做filter的Filter過(guò)濾器。這個(gè)filter可以在sub arrays的基礎(chǔ)上減少arrays。也可以應(yīng)用在視圖模板的標(biāo)記,就像:{{ctrl.array|filter:'a'}},這將為‘a(chǎn)'做一個(gè)全文搜索。然而,在視圖模板中使用filter將會(huì)重新對(duì)每一個(gè)filter過(guò)濾,如果數(shù)組比較大的會(huì)是加載多次的。

因此下面的例子直接調(diào)用在控制器中的filter。通過(guò)這個(gè),控制器可以在需要是調(diào)用filter(例如:當(dāng)后端數(shù)據(jù)加載時(shí)或者filter的表達(dá)式改變時(shí))。

index.html: 

<div ng-controller="FilterController as ctrl">

 <div>

  All entries:

  <span ng-repeat="entry in ctrl.array">{{entry.name}} </span>

 </div>

 <div>

  Entries that contain an "a":

  <span ng-repeat="entry in ctrl.filteredArray">{{entry.name}} </span>

 </div>

</div>

script.js:

angular.module('FilterInControllerModule', []).

controller('FilterController', ['filterFilter', function(filterFilter) {

 this.array = [

  {name: 'Tobias'},

  {name: 'Jeff'},

  {name: 'Brian'},

  {name: 'Igor'},

  {name: 'James'},

  {name: 'Brad'}

 ];

 this.filteredArray = filterFilter(this.array, 'a');

}]);

結(jié)果為:

All entries: Tobias Jeff Brian Igor James Brad

Entries that contain an "a": Tobias Brian James Brad

創(chuàng)建自定義filters:

編寫(xiě)自己的filter是非常簡(jiǎn)單的:只需要在你的模塊中注冊(cè)一個(gè)新的filter factory函數(shù)。在內(nèi)部,這里用了filterProvider。這個(gè)factory函數(shù)應(yīng)該返回一個(gè)新的filter函數(shù)并且將輸入值作為第一個(gè)參數(shù)。任何過(guò)濾器參數(shù)都會(huì)作為附加參數(shù)傳遞到過(guò)濾器函數(shù)中。

這個(gè)過(guò)濾器函數(shù)應(yīng)該是一個(gè)單純的函數(shù)。這意味著它應(yīng)該stateless 和 idempotent。當(dāng)輸入的函數(shù)變化時(shí),angular依賴這些屬性并且執(zhí)行filter。

注意:filter的名稱必須是有效的angular表達(dá)式標(biāo)識(shí)符。例如uppercase或者orderBy。名字是不允許有特殊的字符,如連字符和點(diǎn)是不允許的。如果你希望你的過(guò)濾器有名稱空間,那么你可以使用大寫(xiě)(myappSubsectionFilterx)或者下劃線(myapp_subsection_filterx)。

下面的示例filter是反寫(xiě)一個(gè)字符串。另外,它可以再加一個(gè)條件使字符串大寫(xiě)。

index.html

<div ng-controller="MyController">

 <input ng-model="greeting" type="text"><br>

 No filter: {{greeting}}<br>

 Reverse: {{greeting|reverse}}<br>

 Reverse + uppercase: {{greeting|reverse:true}}<br>

 Reverse, filtered in controller: {{filteredGreeting}}<br>

</div>

script.js

angular.module('myReverseFilterApp', [])

.filter('reverse', function() {

 return function(input, uppercase) {

  input = input || '';

  var out = "";

  for (var i = 0; i < input.length; i++) {

   out = input.charAt(i) + out;

  }

  // conditional based on optional argument

  if (uppercase) {

   out = out.toUpperCase();

  }

  return out;

 };

})

.controller('MyController', ['$scope', 'reverseFilter', function($scope, reverseFilter) {

 $scope.greeting = 'hello';

 $scope.filteredGreeting = reverseFilter($scope.greeting);

}]);

結(jié)果為:

No filter: hello

Reverse: olleh

Reverse + uppercase: OLLEH

Reverse, filtered in controller: olleh

有狀態(tài)的filters(Stateful filters)

強(qiáng)烈建議寫(xiě)有狀態(tài)的filters,因?yàn)檫@些不能用angular進(jìn)行優(yōu)化,這往往會(huì)導(dǎo)致性能問(wèn)題。許多有狀態(tài)的filters轉(zhuǎn)換成無(wú)狀態(tài)的filters僅僅通過(guò)揭露隱藏的狀態(tài)作為model,并且將其轉(zhuǎn)化為一個(gè)filter參數(shù)。

然而,如果你需要寫(xiě)一個(gè)有狀態(tài)的filters,你必須將filter標(biāo)記為$stateful,這也就意味著它將在每一個(gè)$digest周期內(nèi)執(zhí)行一次或多次。

index,html

<div ng-controller="MyController">

 Input: <input ng-model="greeting" type="text"><br>

 Decoration: <input ng-model="decoration.symbol" type="text"><br>

 No filter: {{greeting}}<br>

 Decorated: {{greeting | decorate}}<br>

</div>

script.js:

angular.module('myStatefulFilterApp', [])

.filter('decorate', ['decoration', function(decoration) {

 function decorateFilter(input) {

  return decoration.symbol + input + decoration.symbol;

 }

 decorateFilter.$stateful = true;

 return decorateFilter;

}])

.controller('MyController', ['$scope', 'decoration', function($scope, decoration) {

 $scope.greeting = 'hello';

 $scope.decoration = decoration;

}])

.value('decoration', {symbol: '*'});

結(jié)果為:

No filter: hello

Decorated: *hello*

下次會(huì)寫(xiě)一篇angularjs中filter的常用用法。

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:Angularjs中使用Filters詳解
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn)

版權(quán)所有:易賢網(wǎng)

中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
美脚の诱脚舐め脚责91| 丝袜美腿成人在线| 精品视频在线看| 免费人成精品欧美精品| 欧美一区二区播放| 成人晚上爱看视频| 亚洲综合精品自拍| 精品av久久707| 色视频一区二区| 国产一区二区三区四区五区入口 | 欧美精品日韩一本| 国产精品影音先锋| 亚洲图片欧美色图| 国产亚洲精品资源在线26u| 欧美亚洲一区二区在线| 国产精品乡下勾搭老头1| 一区二区三区在线视频免费 | 日本一区二区三区视频视频| 欧美性大战久久| 成人精品小蝌蚪| 美女视频网站久久| 一片黄亚洲嫩模| 国产午夜精品一区二区| 678五月天丁香亚洲综合网| 成人av在线网| 国产在线观看一区二区| 香蕉乱码成人久久天堂爱免费| 中文一区二区在线观看| 欧美一区二区三区男人的天堂| 色94色欧美sute亚洲线路一ni| 激情综合色播五月| 免费在线观看视频一区| 亚洲一区二区三区小说| 亚洲天堂精品在线观看| 中文字幕欧美国产| 精品国产乱码久久久久久夜甘婷婷| 欧美性极品少妇| 色就色 综合激情| 99免费精品在线| 成人免费观看视频| 国产激情精品久久久第一区二区| 美女脱光内衣内裤视频久久网站| 美脚の诱脚舐め脚责91| 韩国av一区二区三区在线观看| 久久精品国产色蜜蜜麻豆| 麻豆成人免费电影| 一区二区三区高清在线| 亚洲特黄一级片| 国产精品视频第一区| 久久久99精品久久| 国产婷婷色一区二区三区 | 最好看的中文字幕久久| 久久免费午夜影院| 久久久国产精品午夜一区ai换脸| 精品少妇一区二区三区在线播放 | 国内精品嫩模私拍在线| 日韩电影免费在线| 日本免费新一区视频| 日韩电影免费一区| 麻豆91精品91久久久的内涵| 麻豆久久久久久久| 激情综合五月婷婷| 国产成人综合亚洲网站| 成人午夜av影视| 91免费观看视频| 欧美色视频一区| 欧美电影免费提供在线观看| 亚洲综合清纯丝袜自拍| 亚洲成av人综合在线观看| 亚洲高清视频的网址| 亚洲国产日韩a在线播放性色| 曰韩精品一区二区| 香蕉久久一区二区不卡无毒影院| 日韩国产在线观看| 精品一区二区在线免费观看| 国产成人综合视频| 91猫先生在线| 成人三级伦理片| 日本高清不卡aⅴ免费网站| 欧美日韩一级二级| 日韩一区二区三区电影在线观看 | 日本午夜一区二区| 视频一区在线播放| 蜜桃av一区二区在线观看| 国产大陆精品国产| 色综合久久99| 日韩亚洲欧美综合| 国产精品国产三级国产有无不卡| 亚洲欧美一区二区三区久本道91| 亚洲v日本v欧美v久久精品| 精品一区二区影视| 成人一区二区在线观看| 欧美色精品在线视频| 26uuu国产在线精品一区二区| 国产女人18水真多18精品一级做| 一区av在线播放| 国产毛片一区二区| 欧美亚洲一区二区在线观看| 欧美成人一区二区| 中文一区二区在线观看| 日韩高清一区二区| caoporn国产精品| 欧美一区二区在线播放| 国产精品美女久久久久aⅴ国产馆| 亚洲国产综合人成综合网站| 蜜臀久久99精品久久久画质超高清| 国产乱人伦偷精品视频免下载 | 精品日韩99亚洲| 亚洲欧洲综合另类| 国产呦萝稀缺另类资源| 在线免费不卡电影| 久久久久久久久久久久电影| 亚洲大片在线观看| 成人黄页在线观看| 欧美videos中文字幕| 亚洲电影中文字幕在线观看| 成人视屏免费看| 欧美一区二区三区系列电影| 国产精品视频观看| 经典三级视频一区| 91精品中文字幕一区二区三区 | 日日夜夜一区二区| 99vv1com这只有精品| 欧美精品一区二区三区久久久| 亚洲欧美一区二区三区久本道91| 裸体健美xxxx欧美裸体表演| 亚洲午夜久久久久| 成人aaaa免费全部观看| 久久久久99精品一区| 国产精品一区免费视频| 欧美xxx久久| 国内精品在线播放| 欧美xxxxx牲另类人与| 久久精品免费看| 2017欧美狠狠色| 国产在线视频不卡二| 精品99久久久久久| 国产一区二区精品在线观看| 精品国产网站在线观看| 国产乱子伦视频一区二区三区| 欧美成人精品3d动漫h| 精品在线一区二区三区| 久久一夜天堂av一区二区三区| 激情深爱一区二区| 国产日产欧美一区| 成人h动漫精品一区二区| 亚洲视频在线一区观看| 91视频一区二区三区| 亚洲综合免费观看高清完整版 | 日韩欧美国产三级电影视频| 欧美aⅴ一区二区三区视频| 日韩欧美亚洲国产精品字幕久久久| 美日韩一区二区| 欧美激情资源网| 色偷偷成人一区二区三区91| 亚洲成人免费影院| 欧美xfplay| 成人爱爱电影网址| 亚洲国产成人av| 日韩一级精品视频在线观看| 国产伦精品一区二区三区免费迷 | 亚洲一区在线电影| 欧美一区二区三区免费大片| 国产一区二区三区免费播放| 国产精品国产自产拍在线| 欧美亚洲另类激情小说| 美女国产一区二区| 国产精品女主播av| 欧美日韩国产精品自在自线| 蜜桃av一区二区| 综合久久给合久久狠狠狠97色| 欧美日韩免费观看一区三区| 国产伦精品一区二区三区视频青涩| 国产精品久久久久久户外露出| 欧美日本在线播放| 国产在线视频不卡二| 一区二区三区日本| 日韩三级伦理片妻子的秘密按摩| 成人福利在线看| 日韩av一区二区在线影视| 国产精品久久免费看| 欧美精品电影在线播放| 丁香六月久久综合狠狠色| 亚洲午夜一区二区| 亚洲国产精品av| 欧美一区二区三区啪啪| 91网页版在线| 国产一区啦啦啦在线观看| 亚洲一区二区av电影| 国产午夜精品一区二区| 欧美群妇大交群的观看方式| 国产91精品欧美| 日本女人一区二区三区| 亚洲男人的天堂网| 国产亚洲综合av| 欧美一区二区三区公司| 在线视频欧美精品| 成人一二三区视频| 久久国内精品自在自线400部| 一区二区欧美视频|