導航:首頁 > 凈水問答 > angular自定義過濾器保留兩位數

angular自定義過濾器保留兩位數

發布時間:2020-12-16 01:22:34

⑴ 為什麼AngularJS貨幣過濾器格式負數用括弧

先來看看這些內置過濾器使用方法:一個過濾器,不帶參數的情況{{expression|filter}}一個過濾器,帶參數的情況{{expression|filter:arguments}}一個過濾器,帶多個參數的情況{{expression|filter:arg1:arg2:}}多個過濾器,不帶參數的情況{{expression|filter1|filter2|}}下面我們分別使用以下AngularJS的內置過濾器currencycurrency允許我們設置自己的貨幣符號,默認情況下會採用客戶端所處區域的貨幣符號。可以這樣使用:{{3600|currency:"$¥"}}返回結果為$¥123.00onlinecode點擊預覽numbernumber過濾器將數字格式化成文本,它的參數是可選的,用來控制小數點後的截取位數如果傳入的是一個非數字字元,會返回空字元串可以這樣使用:{{3600|number:2}}返回結果為:3,600.00onlinecode點擊預覽lowercaselowercase將字元串轉換為小寫可以這樣使用:{{"HEllo"|lowercase}}返回結果為:helloonlinecode點擊預覽uppercaseuppercase將字元串轉換為大寫可以這樣使用:{{"HEllo"|uppercase}}返回結果為:HELLOonlinecode點擊預覽jsonjson過濾器可以將一個JSON或者JavaScript對象轉換成字元串。這個過濾器對調試相當有用可以這樣使用:{{{"name":"dreamapple","language":"AngularJS"}|json}}返回結果為:{"name":"dreamapple","language":"AngularJS"}onlinecode點擊預覽datedate過濾器將日期過濾成你想要的格式,這個實在是很好的過濾器。這個過濾器用法很多我這里列舉幾種常用的{{today|date:"yyyy-mm-dd"}}結果為:2015-15-13{{today|date:"yyyy-mm-ddHH:mm::ss"}}結果為:2015-18-1320:18::38[onlinecode](2015-18-1320:18::38)還有三個內置的過濾器,但是使用稍微復雜一點,放在下一篇文章中我們大家一起探討吧

⑵ 怎麼用angular js的過濾器實現分類查找數據

工具/原料

AngularJS 腳本庫
IDE
一、在視圖模板(View Template)中使用

在表達式中應用Filters (過濾器)

需要遵循格式如下:
{{ expression | filter }} 即 {{ 表達式 | 過濾器 }}
例如:{{ 12 | currency }} 輸出為 $12.00

在輸出結果中應用Filters (過濾器)

通俗點講就是Filter的疊加--前一filter的輸出結果作為後一filter的輸入數據源.

需要遵循格式如下:
{{ expression | filter1 | filter2 | ... }} 即 表達式(expression)使用filter1過濾後再使用filter2過濾...

帶參數的Filter

Filter後面可以跟一個或多個參數,用來幫助實現特殊要求、需求的filter.

需要遵循格式如下:
{{ expression | filter:argument1:argument2:... }}

示例: {{ 1234 | number:2 }} = 1,234.00

END
二、使用 AngluarJS 內置Filter

AngularJS為我們提供了9個內建的過濾器

分別是currency, date, filter, json, limitTo, uppercase, lowercase, number, orderBy。

具體的用法在AngularJS的文檔中都有詳細說明。下面只說幾個常用的。
currency filter(貨幣過濾器)

currency – 用來將變數轉換成貨幣表現形式

如:{{ amount | currency}}

uppercase/lowercase filter(字母大小寫filter)

如:
{{ "lower cap string" | uppercase }}
<input ng-model="userInput"> Uppercased: {{ userInput | uppercase }}

date filter (日期filter)

如:

{{ 1304375948024 | date }}
{{ 1304375948024 | date:"MM/dd/yyyy @ h:mma" }}

json filter

如:
{{ {foo: "bar", baz: 23} | json }}

END
在controllers, services和drictives中使用filter

1
可以在AngularJS的controller, service或者driective中使用filter, 這時候你需要將依賴的filter名字加入到controller, service或者directive的依賴中去。
2
在controller中直接使用filter, 這樣controller可以根據自身需要而適時調用filter

END
三、自定義filter(過濾器)

1
AngularJS編寫自定義過濾器的形式和AngularJS的factory service非常相像,一定記得它返回一個對象或者是一個函數即可,編寫的時候,只需要一個帶有一個以上參數的函數即可。
2
格式大致如:
app.filter('filter(過濾器)名稱',function(){
return function(需要過濾的對象,過濾器參數1,過濾器參數2,...){
//...執行業務邏輯代碼

return 處理後的對象;
}
});

⑶ angularjs中有多個過濾器使用方法

一、在視圖模板(View Template)中使用
在表達式中應用Filters (過濾器)
需要遵循格式如下:
{{ expression | filter }} 即 {{ 表達式 | 過濾器 }}
例如:{{ 12 | currency }} 輸出為 $12.00在輸出結果中應用Filters (過濾器)
通俗點講就是Filter的疊加--前一filter的輸出結果作為後一filter的輸入數據源.
需要遵循格式如下:
{{ expression | filter1 | filter2 | ... }} 即 表達式(expression)使用filter1過濾後再使用filter2過濾...
帶參數的Filter
Filter後面可以跟一個或多個參數,用來幫助實現特殊要求、需求的filter.
需要遵循格式如下:
{{ expression | filter:argument1:argument2:... }}
示例: {{ 1234 | number:2 }} = 1,234.00END
二、使用 AngluarJS 內置Filter
AngularJS為我們提供了9個內建的過濾器
分別是currency, date, filter, json, limitTo, uppercase, lowercase, number, orderBy。
具體的用法在AngularJS的文檔中都有詳細說明。下面只說幾個常用的。
currency filter(貨幣過濾器)
currency – 用來將變數轉換成貨幣表現形式
如:{{ amount | currency}}
uppercase/lowercase filter(字母大小寫filter)如:
{{ "lower cap string" | uppercase }}
<input ng-model="userInput"> Uppercased: {{ userInput | uppercase }}
date filter (日期filter)
如:
{{ 1304375948024 | date }}
{{ 1304375948024 | date:"MM/dd/yyyy @ h:mma" }}
json filter
如:
{{ {foo: "bar", baz: 23} | json }}
END
在controllers, services和drictives中使用filter1可以在AngularJS的controller, service或者driective中使用filter, 這時候你需要將依賴的filter名字加入到controller, service或者directive的依賴中去。
2在controller中直接使用filter, 這樣controller可以根據自身需要而適時調用filterEND
三、自定義filter(過濾器)
1AngularJS編寫自定義過濾器的形式和AngularJS的factory service非常相像,一定記得它返回一個對象或者是一個函數即可,編寫的時候,只需要一個帶有一個以上參數的函數即可。
2格式大致如:
app.filter('filter(過濾器)名稱',function(){return function(需要過濾的對象,過濾器參數1,過濾器參數2,...){//...執行業務邏輯代碼return 處理後的對象;
}
});

⑷ 如何在angularjs的自定義指令內部定義自定義過濾器

實現方式
下面看一下如何定義聲明一個過濾器,首先依然是要創建我們自己的模塊myAppMole
var myAppMole = angular.mole("myApp",[]);

接下來在模塊的基礎上,創建過濾器:
myAppMole.filter("reverse",function(){

});

其中reverse是過濾器的名字,後面跟著過濾器的方法聲明,在方法中返回另一個方法:

myAppMole.filter("reverse",function(){
return function(input,uppercase){
var out = "";
for(var i=0 ; i<input.length; i++){
out = input.charAt(i)+out;
}
if(uppercase){
out = out.toUpperCase();
}
return out;
}
});

內部返回的方法包含了兩個參數,一個是輸入的值,就是我們過濾器接受的值。
如果想要實現下面的過濾器:
name | reverse

則input就是其中name代表的值。
後面的參數是可選的,我們這里接受uppercase這個bool值,判斷是否要進行大小寫轉換。
內部實現的代碼,就沒必要解釋了。最後返回過濾後的字元串即可。

⑸ angular寫的過濾器 怎麼引入

1.過濾器是用來格式化需要展示給用戶的數據,AngularJS中含有實用的內置過濾器可以使用,也支持用戶進行自定義過濾器;
2.過濾器調用方式:
(1) 在HTML的模板中綁定符合{{}} 內通過 | 符號來調用過濾器; 比如{{ name | uppercase }} ------將name字元串中的每個字元轉為大寫字母;
(2) 在JavaScript中可以通過$filter 來調用過濾器,比如:

[javascript] view plain
app.controller("demoController",['$scope','$filter',function($scope,$filter){
$scope.name = $filter("uppercase")('ari');
}]);
(3) 在HTML中使用過濾器時,如需要傳遞參數給過濾器,則需要在過濾器後面加冒號即可,若有多個參數,則在每個參數後面加入冒號即可,比如 {{ 123.4567 | number : 2}} 頁面展示為 123.46
3.angularJS 提供的內置過濾器:
(1) currency: 可以將一個數值格式化為貨幣格式,默認的貨幣符號是當前客戶端所處區域的貨幣符號;
(2)date:將日期格式化為需要的格式,具體的格式參考其API;
(3) filter:從給定數組中選擇一個子集,並將其生成一個新數組返回。filter過濾器的第一個參數可以是字元串、對象或是一個用來從數組中選擇元素函數,傳入不同類型時表現:
1) 字元串:返回所有包含這個字元串的元素,如想返回不包含該字元串的所有元素,則在參數之前加 ! ;
2) 對象:AngularJS會將待過濾對象的屬性同這個對象中的同名屬性進行比較,若屬性值是字元串就會判斷是否包含該字元串;若希望對全部屬性進行對比,將$作為鍵名;

3) 函數: 對待過濾數組的每個元素執行此函數,返回非假值的元素會出現在新的數組中並返回;
filter的第二個參數可以是:
1)true: 用angular.equals(excepted,actual)對兩個值進行嚴格比較;
2) false:進行區分大小寫的子字元串比較;
3)函數:運行這個函數,如果返回真值就接受這個元素;
(4) json:將一個JSON或JavaScript對象轉換成字元串;
(5) limitTo :根據傳入的參數生成一個新的數組或字元串,新的數組或字元串的長度取決於傳入的參數,通過傳入參數的正負值來控制從前面還是後面進行截取;
如果傳入的長度大於被過濾的數組或字元串的長度,則整個數組或字元串都會被返回;
{{ San is very people | limitTo : 3}} ----> San {{ San is very people | limitTo : -3}} ---->ple
(6)lowercase 將過濾字元串轉為小寫字母; uppercase 將過濾字元串轉為大寫字母;
(7) number :將數字格式化成文本,第二個參數是可選,用於控制小數點後截取的位數; 如果傳入的是非數字字元,則返回空字元串;
(8) orderBy:用表達式對指定的數組進行排序,可以接受兩個參數,第一個參數是必須的,第二個參數是可選,第一個參數的情況:
1) 函數:當第一個參數是函數時,該函數會被當作待排序對象的getter方法;
2)字元串:對這個字元串進行解析的結果將決定數組元素的排序方式,可以使用+ 或 - 來強制進行升序和降序;
3)數組:在排序表達式中使用數組元素作為謂詞; 第二個參數用來控制排序的方向;
4.自定義過濾器:
此過濾器用來定義一個名為myFilter的過濾器,作用是將傳入的字元串的首字母轉為大寫字母;

[javascript] view plain
angular.mole("testFilter",[]).filter("myFilter",function(){
return function(input) {
if (input) {
return input[0].toUpperCase() + input.slice(1);
}
}
});
5.表單驗證:

(1) 若想要屏蔽瀏覽器對表單的默認驗證行為,則在表單元素上添加 novalidate標記,若想使用angularJS 的表單驗證功能,需要保證form有name屬性;
(2) input上可以使用的驗證選項:
1)required:驗證當前input是否有值,必填項;
2) ng-minlength/ng-maxlength:當前input能輸入的最大長度和最小長度; <input name="text" ng-minlength="2" ng-maxlength="20"/>
3) ng-pattern :模式匹配,用來確保輸入能夠匹配指定的正則表達式;
4) email:驗證輸入的內容是否是電子郵件,<input type="email" name="email"/>
5) number:驗證輸入的內容是否是數字 <input type="number" name="age"/>
6) URL:驗證輸入的內容是否是URL <input type="url" name="homespace"/>
在javaScript中可以使用這些屬性去對表單做出實時響應 通過formName.inputFieldName.property格式訪問屬性:
1) formName.inputFieldName.$pristine:用來判斷用戶是否修改了表單,若未修改則返回true,若修改過,則返回false;
2) formName.inputFieldName.$dirty:只用用戶修改過表單,無論輸入是否通過驗證,該值都返回true;
3) fornName.inputFieldName.$valid:用來判斷表單的內容是否合法,若表單內容是合法的則返回true;
4) fornName.inputFieldName.$invalid:用來判斷表單的內容是否不合法,若表單內容是不合法的則返回true;
5) fornName.inputFieldName.$error:用來判斷表單所有的驗證內容以及內容是否合法,如果驗證失敗,則屬性值為true,若輸入欄位的值通過驗證則返回false;

(3) $parsers:
當用戶同控制器進行交互並且ngModelController中的$setViewValue()方法被調用時,$parsers數組中的函數會以流水線的形式被逐個調用,第一個調用值會變傳入到第二個$parse中;調用函數時,可以使用$setValidity()函數去設置表單的合法性;
(4) $formatters:
當綁定的ngModel值發生變化,並經過$parsers數組中解析器處理後,這個值會被創遞給$formatters流水線,此函數可以修改並格式化這些值;

(3) ngMessages( 在AngularJS 1.3+以上版本中才包含此指令)
1)ngMessages是angularJs的一個獨立模塊,故需要手動載入 指令為 $ bower install --save angular-messages或在angular官網上下載此文件,然後通過html引入;
2)ngMessages還需要作為引用程序的依賴模塊引入,比如angular.mole("myApp",[ngMessages]);

⑹ Angularjs 過濾器能獲取到過濾後的數據嗎

|AngularJS的內置過濾器使用方法:
一個過濾器,不帶參數的情況
{{expression | filter}}

一個過濾器,帶參數的情況
{{expression | filter:arguments}}

一個過濾器,帶多個參數的情況
{{expression | filter: arg1: arg2: ...}}

多個過濾器,不帶參數的情況
{{expression | filter1 | filter2 | ...}}
分別使用以下AngularJS的內置過濾器
currency

currency允許我們設置自己的貨幣符號,默認情況下會採用客戶端所處區域的貨幣符號。
可以這樣使用:{{ 3600 | currency: "$¥"}}
返回結果為$¥123.00
online code點擊預覽

number

number過濾器將數字格式化成文本,它的參數是可選的,用來控制小數點後的截取位數
如果傳入的是一個非數字字元,會返回空字元串
可以這樣使用:{{ 3600 | number:2}}
返回結果為:3,600.00
online code點擊預覽

lowercase

lowercase將字元串轉換為小寫
可以這樣使用:{{ "HEllo" | lowercase}}
返回結果為:hello
online code點擊預覽

uppercase

uppercase將字元串轉換為大寫
可以這樣使用:{{ "HEllo" | uppercase}}
返回結果為:HELLO
online code點擊預覽

json

json過濾器可以將一個JSON或者JavaScript對象轉換成字元串。
這個過濾器對調試相當有用
可以這樣使用:{{ {"name":"dreamapple","language":"AngularJS"} | json}}
返回結果為:{ "name": "dreamapple", "language": "AngularJS" }
online code點擊預覽

date

date過濾器將日期過濾成你想要的格式,這個實在是很好的過濾器。
這個過濾器用法很多我這里列舉幾種常用的
{{ today | date: "yyyy - mm - dd"}}
結果為:2015 - 15 - 13
{{ today | date: "yyyy - mm - dd HH:mm::ss"}}
結果為:2015 - 18 - 13 20:18::38
[online code](2015 - 18 - 13 20:18::38)

⑺ angularjs自定義的過濾器只能用一次嗎

這個只能自己寫過濾方法版了權
function unique(arr, key){

var tempArr = arr;

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

for(var j = 0;j< tempArr.length;j++){

if(tempArr[i][key] == tempArr[j][key]){

arr.splice(j,1);

}

}

}

return arr;
}
unique($scope.items,'name')

⑻ angularjs自定義過濾器怎麼寫

過濾器(filter)正如其名,作用就是接收一個輸入,通過某個規則進行處理,然後返回處回理後的結果。主要答用在數據的格式化上,例如獲取一個數組中的子集,對數組中的元素進行排序等。ng內置了一些過濾器,它們是:currency(貨幣)、date(日期)、filter(子串匹配)、json(格式化json對象)、limitTo(限制個數)、lowercase(小寫)、uppercase(大寫)、number(數字)、orderBy(排序)。總共九種。除此之外還可以自定義過濾器,這個就強大了,可以滿足任何要求的數據處理。
AngularJS中為我們提供了一些內置的過濾器,這里列舉一些自定義過濾器的場景。

⑼ angularjs怎麼自定義過濾器去掉重復項

如果你在前台做起來覺得費勁,為什麼不在後台處理呢?你的這個需求在後台通過sql查詢出來是多簡單。將查詢的結果直接在發給angualr,再顯示到前台形成導航,不是很簡單嗎?

⑽ angular 過濾器一定要在ng-repeat裡面嗎

小寫過濾器
添加小寫的過濾器,使用管道符的表達式。在這里添加小寫過濾器專,以小寫字屬母列印學生姓名。
Enter first name:<input type="text" ng-model="student.firstName">
Enter last name: <input type="text" ng-model="student.lastName">
Name in Upper Case: {{student.fullName() | lowercase}}

貨幣濾波器
加幣過濾器使用管道符返回數的表達式。在這里,我們添加了過濾器,貨幣使用貨幣格式的列印費用。
Enter fees: <input type="text" ng-model="student.fees">
fees: {{student.fees | currency}}

閱讀全文

與angular自定義過濾器保留兩位數相關的資料

熱點內容
EDI樹脂膜片維修 瀏覽:871
污水井堵塞物業不管怎麼辦 瀏覽:926
路由器設置提升網速 瀏覽:904
鼻回吸有血絲用什麼葯 瀏覽:12
用過濾器加除垢劑清冼熱水器 瀏覽:840
水管內水垢怎樣清除 瀏覽:298
衢州污水處理要怎麼操作 瀏覽:67
家樂事的濾芯怎麼樣 瀏覽:428
飲水機里的水為什麼會發酸 瀏覽:406
純水偏酸是什麼原因 瀏覽:218
白酒蒸餾幾次才能達到100 瀏覽:811
凈水器濾芯超濾膜 瀏覽:946
凈水一微米是什麼意思 瀏覽:958
哪個牌子好用松下全屋凈水 瀏覽:327
鄭州澤德提升泵 瀏覽:145
怎麼查詢回北京用隔離嗎 瀏覽:16
成都批發樹脂的地方 瀏覽:198
新疆葡萄蒸餾酒簡介 瀏覽:857
如何把凈水器政府模式做得更好 瀏覽:9
自己建房污水管什麼位置 瀏覽:177