91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Angular管道PIPE的介紹和使用

發布時間:2021-06-22 15:07:16 來源:億速云 閱讀:158 作者:chen 欄目:開發技術

本篇內容主要講解“Angular管道PIPE的介紹和使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Angular管道PIPE的介紹和使用”吧!

前言

PIPE,翻譯為管道。Angular 管道是編寫可以在HTML組件中聲明的顯示值轉換的方法。Angular 管道之前在 AngularJS 中被稱為過濾器,從 Angular 2開始就被稱為管道。管道將數據作為輸入并將其轉換為所需的輸出。

Angular Pipes 將整數、字符串、數組和日期作為輸入,用| 分隔,然后根據需要轉換成格式,并在瀏覽器中顯示出來。在插值表達式中,可以定義管道并根據情況使用它,在 Angular 應用程序中可以使用許多類型的管道。

內建管道

  • String -> String

    • UpperCasePipe

    • LowerCasePipe

    • TitleCasePipe

  • Number -> String

    • DecimalPipe

    • PercentPipe

    • CurrencyPipe

  • Object -> String

    • JsonPipe

    • DatePipe

  • Tools

    • SlicePipe

    • AsyncPipe

    • I18nPluralPipe

    • I18nSelectPipe

使用方法

大寫轉換

<div>
  <p ngNonBindable>{{ 'Angular' | uppercase }}</p>
  <p>{{ 'Angular' | uppercase }}</p> <!-- Output: ANGULAR -->
</div>

日期格式化

<div>
  <p ngNonBindable>{{ today | date: 'shortTime' }}</p>
  <p>{{ today | date: 'shortTime' }}</p> <!-- Output: 以當前時間為準,輸出格式:10:40 AM -->
</div>

數值格式化

<div>
  <p ngNonBindable>{{ 3.14159265 | number: '1.4-4' }}</p>
  <p>{{ 3.14159265 | number: '1.4-4' }}</p> <!-- Output: 3.1416 -->
</div>

JavaScript 對象序列化

<div>
  <p ngNonBindable>{{ { name: 'semlinker' } | json }}</p>
  <p>{{ { name: 'semlinker' } | json }}</p> <!-- Output: { "name": "semlinker" } -->
</div>

管道參數

管道可以接收任意數量的參數,使用方式是在管道名稱后面添加:和參數值。如number: '1.4-4',若需要傳遞多個參數則參數之間用冒號隔開,具體示例如下:

<div>
  <p ngNonBindable>{{ 'semlinker' | slice:0:3 }}</p>
  <p>{{ 'semlinker' | slice:0:3 }}</p> <!-- Output: sem -->
</div>

管道鏈

<div>
  <p ngNonBindable>{{ 'semlinker' | slice:0:3 | uppercase }}</p>
  <p>{{ 'semlinker' | slice:0:3 | uppercase }}</p>
</div>

自定義管道

下面以過往項目中使用的管道為示例,講解自定義管道步驟:

  • 使用 @Pipe 裝飾器定義 Pipe 的 metadata 信息,如 Pipe 的名稱 - 即 name 屬性

  • 實現 PipeTransform 接口中定義的 transform 方法

定義

import { Pipe, PipeTransform } from "@angular/core";

@Pipe({ name: "formatError" })
export class FormatErrorPipe implements PipeTransform {
    constructor() {}

    transform(value: any, module: string) {
        if (value.code) {
            return value.desc;
        } else {
            return value.message;
        }
    }
}

使用

<div *ngIf="errorMessage">
    <div class="message-box error mb-16" [@animate]="{value:'*',params:{opacity:'0',duration:'200ms'}}">
        {{errorMessage.error | formatError:"auth"}}
    </div>
</div>

到此,相信大家對“Angular管道PIPE的介紹和使用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

佳木斯市| 西乌珠穆沁旗| 江陵县| 佛山市| 垫江县| 襄城县| 奉化市| 甘孜| 武宣县| 石柱| 肇源县| 崇义县| 永城市| 沙湾县| 阿城市| 益阳市| 涪陵区| 精河县| 鄂尔多斯市| 阳新县| 会同县| 南乐县| 洞口县| 博白县| 庆云县| 天台县| 饶阳县| 东港市| 祥云县| 惠州市| 东阳市| 环江| 石渠县| 梁山县| 高阳县| 和田市| 洛南县| 平舆县| 乌兰县| 高安市| 望谟县|