麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

Angular7中創建組件/自定義指令/管道的方法實例詳解

2019-11-19 11:54:25
字體:
來源:轉載
供稿:網友

組件

使用命令創建組件

•創建組件的命令:ng generate component 組件名
•生成的組件組成: 組件名.html 、組件名.ts、組件名.less、組件名.spec.ts
•在組件的控制器

@Component({ selector: 'app-heroes', templateUrl: './heroes.component.html', styleUrls: ['./heroes.component.less']})

手動創建組件

1.創建一個組件ts文件

2.在組件中設置

// 1. 導入包,按需導入import { Component } from "@angular/core";import { CoreEdit, NavLayoutComponent } from "@reco/core";import { DinerService } from "../Service";// 2.定義當前組件的修飾器@Component({ // 支出對外使用的名稱 selector: "diner-birth", // 使用的模板 templateUrl: "./diner.birth.html"})// 導出使用的類export class DinerBirthComponent extends CoreEdit { constructor( private _dinerService: DinerService, layout: NavLayoutComponent ) { super(_dinerService, 'diner-birth', layout); }}

1.在index.ts文件中引入并導出

// 1. 導入import { DinerBirthComponent } from "./diner.birth";// 2. 導出export { DinerBirthComponent }// 3. 注冊@NgModule({ // 這里列出的 NgModule 所導出的可聲明對象可用在當前模塊內的模板中 imports: [....], // declarations:[ 組件 ] 屬于該模塊的一組組件、指令和管道(統稱可聲明對象)。 // 注意點:在這個源數據中只能聲明組件、管道、指令 declarations: [DinerBirthComponent], // 定義此 NgModule 中要編譯的組件集,這樣它們才可以動態加載到視圖中。 entryComponents: [....], // 導出的模塊 exports: [....]})

指令

認識指令

•說明:在 Angular 中有三種類型的指令: ◦1.組件 ― 擁有模板的指令
◦2.結構型指令 ― 通過添加和移除 DOM 元素改變 DOM 布局的指令
◦3.屬性型指令 ― 改變元素、組件或其它指令的外觀和行為的指令。

自定義指令

•創建自定義指令的命令: ng g d 目錄/指令名稱

•創建指令

1.創建指令的文件ts文件

2.在指令文件中寫

import { Directive, ElementRef, Input, Output } from '@angular/core';// 自定義指令@Directive({ selector: '[dinerHidden]'})// 導出指令的模塊export class DinerHiddenDirective { // el 代表當前的元素 constructor(el: ElementRef) { // console.log() el.nativeElement.style.display = "none" }}1.在index.ts中將該指令導入到ngModule中// 1.導入import { DinerHiddenDirective } from "./diner.hidden";// 2.導出export const DINER_COMPONENTS: Provider[] = [ DinerHiddenDirective ];// 3.ngModule中注冊@NgModule({ // 這里列出的 NgModule 所導出的可聲明對象可用在當前模塊內的模板中 imports: [], // declarations:[ 組件 ] 屬于該模塊的一組組件、指令和管道(統稱可聲明對象)。 // 注意點:在這個源數據中只能聲明組件、管道、指令 declarations: [DINER_COMPONENTS], // 定義此 NgModule 中要編譯的組件集,這樣它們才可以動態加載到視圖中。 entryComponents: []})

1.在頁面中引用

 <!-- 隱藏當前的這個標簽 --> <div class="form-group col-sm-6" dinerHidden>   </div>

管道中的常用API

asyncPipe

•說明:async 管道會訂閱一個 Observable 或 Promise,并返回它發出的最近一個值。 當新值到來時,async 管道就會把該組件標記為需要進行變更檢測。當組件被銷毀時,async 管道就會自動取消訂閱,以消除潛在的內存泄露問題。

CurrencyPipe

•說明:把數字轉換成金額字符串, 根據本地化規則進行格式化,這些規則會決定分組大小和分組分隔符、小數點字符以及其它與本地化環境有關的配置項。

DatePipe

•說明:把數字轉換成金額字符串, 根據本地化規則進行格式化,這些規則會決定分組大小和分組分隔符、小數點字符以及其它與本地化環境有關的配置項。

DecimalPipe

•說明:把數字轉換成字符串, 根據本地化規則進行格式化,這些規則會決定分組大小和分組分隔符、小數點字符以及其它與本地化環境有關的配置項。

自定義管道

•創建管道的命令:ng g pipe 目錄/管道名稱

•手動創建管道 •創建ts文件

import { Pipe, PipeTransform } from '@angular/core';// 自定義管道 getGender@Pipe({ name: 'getGender'})// 創建的管道的類export class GenderPipe implements PipeTransform { transform(value: string, exponent: string) { if (value == ' ') return "未知" return value === 'm' ? "男" : "女" }}

•將這個管道添加到NgModuel中

// 1. 先導入import { GenderPipe } from "./diner.gender";// 2.導出 export const DINER_COMPONENTS: Provider[] = [GenderPipe];// 3.添加到NgModule中的@NgModule({ // 這里列出的 NgModule 所導出的可聲明對象可用在當前模塊內的模板中 imports: [...], // declarations:[ 組件 ] 屬于該模塊的一組組件、指令和管道(統稱可聲明對象)。 // 注意點:在這個源數據中只能聲明組件、管道、指令 declarations: [DINER_COMPONENTS], // 定義此 NgModule 中要編譯的組件集,這樣它們才可以動態加載到視圖中。 entryComponents: [...]})

•在頁面中引入使用

~<!-- item.DGender的值為m和w,將對應的m轉為男,w轉為女 --><td>{{item.DGender | getGender}}</td>~

總結

以上所述是小編給大家介紹的Angular7中創建組件/自定義指令/管道的方法實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91色琪琪电影亚洲精品久久 | 99精品视频免费看 | 中文字幕涩涩久久乱小说 | 国产亚洲精品久久久久婷婷瑜伽 | 国产国语毛片 | 精品一区二区三区在线观看视频 | 成人福利视频 | 国产精品久久久久久影院8一贰佰 | 高清视频一区二区 | 国产美女爽到喷白浆的 | 国产剧情v888av | 国产精品久久久久久久久久久天堂 | 日韩黄色免费在线观看 | 国产午夜精品一区二区三区视频 | 亚洲视频成人 | 草碰人人 | 欧美性生话视频 | 日本一区视频在线观看 | 制服丝袜日日夜夜 | 亚洲国产成人一区二区 | 日韩精品久久久久久久电影99爱 | 成人啪啪18免费网站 | 久久精品一二三区 | 欧美性生视频 | 亚洲网站在线观看视频 | 国产黄色免费网站 | 午夜精品一区二区三区免费 | 日韩在线欧美在线 | 日本精品黄色 | 亚洲小视频在线 | 日日狠狠久久偷偷四色综合免费 | 369看片你懂的小视频在线观看 | 热99re久久免费视精品频软件 | 天天夜夜草| 日本在线一区二区 | 久久久无码精品亚洲日韩按摩 | 成人性生活视频在线播放 | 欧美精品久久久久久久久久 | 男人的天堂视频网站 | 亚洲爱爱网站 | 性猛aa久久久 |