国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 22:24:44
文檔

Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析

Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析:本文實例講述了Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法。分享給大家供大家參考,具體如下: 管道(Pipe)可以根據(jù)開發(fā)者的意愿將數(shù)據(jù)格式化,還可以多個管道串聯(lián)。 純管道(Pure Pipe)與非純管道(Impure Pipe) 管道分純管道(Pure Pipe)和非純管道
推薦度:
導(dǎo)讀Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析:本文實例講述了Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法。分享給大家供大家參考,具體如下: 管道(Pipe)可以根據(jù)開發(fā)者的意愿將數(shù)據(jù)格式化,還可以多個管道串聯(lián)。 純管道(Pure Pipe)與非純管道(Impure Pipe) 管道分純管道(Pure Pipe)和非純管道

本文實例講述了Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法。分享給大家供大家參考,具體如下:

管道(Pipe)可以根據(jù)開發(fā)者的意愿將數(shù)據(jù)格式化,還可以多個管道串聯(lián)。

純管道(Pure Pipe)與非純管道(Impure Pipe)

管道分純管道(Pure Pipe)和非純管道(Impure Pipe)。默認(rèn)情況下,管道都是純的,在自定義管道聲明時把pure標(biāo)志置為false,就是非純管道。如:

@Pipe({
 name: 'sexReform',
 pure:false
})

純管道和非純管道的區(qū)別:

① 純管道:

Angular只有檢查到輸入值發(fā)生純變更時,才會執(zhí)行純管道。純變更指的是,原始類型值(String,Number,Boolean,Symbol)的改變,或者對象引用的改變(對象值改變不是純變更,不會執(zhí)行).

② 非純管道

Angular會在每個組件的變更檢測周期執(zhí)行非純管道。所以,如果使用非純管道,我們就得注意性能問題了。

管道使用語法

{{expression | pipe : arg}}

如果是鏈?zhǔn)酱?lián):

{{expression | pipe1 : arg | pipe2 | pipe3 }}

常用內(nèi)置管道

管道 類型 功能
DatePipe 純管道 日期格式化
JsonPipe 非純管道 使用JSON.stringify()將對象轉(zhuǎn)成json字符串
UpperCasePipe 純管道 將文本中的字母全部轉(zhuǎn)在大寫
LowerCasePipe 純管道 將文本中的字母全部轉(zhuǎn)成小寫
DecimalPipe 純管道 數(shù)值格式化
CurrencyPipe 純管道 貨幣格式化
PercentPipe 純管道 百分比格式化
SlicePipe 非純管道 數(shù)組或字符串取切割

DatePipe

語法:{{expression | date:format}}

expression支持日期對象、日期字符串、毫秒級時間戳。format是指定的格式,常用標(biāo)志符:

y 年 y使用4位數(shù)字表示年份(2017),yy使用兩位數(shù)字表示(17)
M 月 M 1位或兩位數(shù)字(2或10、11、12),MM 兩位數(shù)字表示,前面補(bǔ)0(02)
d 日 d 一位或兩位數(shù)字(9) dd兩位數(shù)字,前面補(bǔ)0(09)
E 星期 EEE 三位字母縮寫的星期 EEEE 星期全稱
j 12小時制時間 j (9 AM) jj (09 AM)
h 12小時制小時 h(9) hh (09)
H 24小時制小時 H(9) HH (09)
m 分 m (5) mm (05)
s 秒 s (1) ss (01)
z 時區(qū) z China Standard Time

DecimalPipe

語法:{{expression | number[: digiInfo] }}

digiInfo格式:

{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}

即:整數(shù)位保留最小位數(shù).小數(shù)位保留最小位數(shù)-小數(shù)位最大保留位置

默認(rèn)值: 1.0-3

CurrencyPipe

語法:{{expression | currency[: currencyCode[: symbolDisplay[: digiInfo]]] }}

digiInfo格式與DecimalPipe相同,不再解釋。

currencyCod是指貨幣代碼,其值為ISO 4217標(biāo)準(zhǔn),人民幣CNY,美元USD,歐元 EUR.
symbolDisplay 是一個布爾值,true時顯示貨幣符號($¥) false顯示貨幣碼

PercentPipe

語法:{{expression | percent[: digiInfo] }}

digiInfo格式與DecimalPipe相同,不再解釋。

SlicePipe

語法:{{expression | slice: start [: end] }}

expression 可以是一個字符串或數(shù)組。字符串時,該管道調(diào)用String.prototype.slice()方法截取子串。如果是數(shù)組,調(diào)用Array.prototype.slice()方法取數(shù)組子元素。

自定義管道

除了使用內(nèi)置的管道,還可以通過自定義管道實現(xiàn)更復(fù)雜的功能。

創(chuàng)建管道:

ng g pipe sexReform

angular-cli會幫我們創(chuàng)建SexReformPipe管道,這個管道的功能是根據(jù)male、female返回中文的男、女。

代碼:

import {Pipe, PipeTransform} from '@angular/core';
@Pipe({
 name: 'sexReform',
 //非純管道
 pure:false
})
export class SexReformPipe implements PipeTransform {
 transform(value: any, args?: any): any {
 let chineseSex;
 switch (value) {
 case 'male':
 chineseSex = '男';
 break;
 case 'female':
 chineseSex = '女';
 break;
 default:
 chineseSex = '未知性別';
 break;
 }
 return chineseSex;
 }
}

重點在于實現(xiàn)PipeTransform接口的transform方法,定義為非純管道僅用于演示,非純管道對性能影響較大,盡量避免。

演示代碼

組件:

import { Component, OnInit } from '@angular/core';
@Component({
 selector: 'app-pipe',
 templateUrl: './pipe.component.html',
 styleUrls: ['./pipe.component.css']
})
export class PipeComponent implements OnInit {
 date=new Date();
 money=5.9372;
 object={title:'ffff',subTitle:'subtitlefff'};
 str='abcdABCD';
 percent=0.97989;
 constructor() { }
 ngOnInit() {
 }
}

模板:

<p>
 {{date| date:'y-MM-dd HH:mm:ss'}} <br />
 {{object| json }} <br />
 {{str| uppercase }} <br />
 {{str| lowercase }} <br />
 {{money| number:'2.4-10' }} <br />
 {{money| number:'5.1-2' }} <br />
 {{money| currency:'CNY':false:'1.1-2' }} <br />
 {{percent| percent:'1.1-2' }} <br />
 {{str| slice:1:3 }} <br />
 {{'female'| sexReform }} <br />
</p>

更多關(guān)于AngularJS相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《AngularJS指令操作技巧總結(jié)》、《AngularJS入門與進(jìn)階教程》及《AngularJS MVC架構(gòu)總結(jié)》

希望本文所述對大家AngularJS程序設(shè)計有所幫助。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析

Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法實例分析:本文實例講述了Angular2管道Pipe及自定義管道格式數(shù)據(jù)用法。分享給大家供大家參考,具體如下: 管道(Pipe)可以根據(jù)開發(fā)者的意愿將數(shù)據(jù)格式化,還可以多個管道串聯(lián)。 純管道(Pure Pipe)與非純管道(Impure Pipe) 管道分純管道(Pure Pipe)和非純管道
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产欧美日韩精品在线 | 九九精品成人免费国产片 | 一区二区视频 | 国产高清在线 | 国产一区在线免费观看 | 欧美在线二区 | 国产成人亚洲欧美三区综合 | 亚洲电影网址 | 一区二区三区视频 | 久久久久成人精品一区二区 | 狠狠干欧美 | 一级毛片一级毛片一级级毛片 | 亚洲色图欧美激情 | 国模冰冰大尺度啪啪 | 精品日韩一区 | 亚洲欧美日韩在线 | 免费一区二区三区免费视频 | 欧美一区二区三区视频 | 亚洲视频在线观 | 欧美成人一区二区三区在线视频 | 国内精品久久久久久久aa护士 | 精品欧美一区二区三区 | 91国内精品久久久久免费影院 | 国产成人亚洲综合91精品555 | 国产欧美日韩视频 | 伊人情人综合成人久久网小说 | 亚洲欧美日韩另类 | 国外欧美一区另类中文字幕 | 九九久久国产 | 日韩福利在线 | 久久久久久久国产a∨ | 日韩专区第一页 | 在线综合亚洲欧美自拍 | 国产一区二区在线观看视频 | 精品久久一区二区三区 | 成人久久久观看免费毛片 | 欧美日韩精品一区二区三区 | 小说区 亚洲 自拍 另类 | 日本一区二区视频在线观看 | 国产成人精品日本亚洲语音1 | 久久亚洲精品国产精品777777 |