国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Angular 4依賴注入學習教程之Injectable裝飾器(六)

2024-05-06 15:16:20
字體:
來源:轉載
供稿:網友

學習目錄

Angular 4 依賴注入教程之一 依賴注入簡介 Angular 4 依賴注入教程之二 組件服務注入 Angular 4 依賴注入教程之三 ClassProvider的使用 Angular 4 依賴注入教程之四 FactoryProvider的使用 Angular 4 依賴注入教程之五 FactoryProvider配置依賴對象 Angular 4 依賴注入教程之六 Injectable 裝飾器 Angular 4 依賴注入教程之七 ValueProvider的使用 Angular 4 依賴注入教程之八 InjectToken的使用

本文主要給大家介紹的是關于Angular 4依賴注入之Injectable裝飾器的相關內容,分享出來供大家參考學習,下面來看看詳細的介紹:

本系列教程的開發環境及開發語言:

Angular 4 + Angular CLI TypeScript

基礎知識

裝飾器是什么

它是一個表達式 該表達式被執行后,返回一個函數 函數的入參分別為 targe、name 和 descriptor 執行該函數后,可能返回 descriptor 對象,用于配置 target 對象 

裝飾器的分類

類裝飾器 (Class decorators) 屬性裝飾器 (Property decorators) 方法裝飾器 (Method decorators) 參數裝飾器 (Parameter decorators)

TypeScript 類裝飾器

類裝飾器聲明:

declare type ClassDecorator = <TFunction extends Function>(target: TFunction) =>  TFunction | void

類裝飾器顧名思義,就是用來裝飾類的。它接收一個參數:

target: TFunction - 被裝飾的類

看完第一眼后,是不是感覺都不好了。沒事,我們馬上來個例子:

function Greeter(target: Function): void { target.prototype.greet = function (): void { console.log('Hello!'); }}@Greeterclass Greeting { constructor() { // 內部實現 }}let myGreeting = new Greeting();myGreeting.greet(); // console output: 'Hello!';

上面的例子中,我們定義了 Greeter 類裝飾器,同時我們使用了 @Greeter 語法,來使用裝飾器。

Injectable 類裝飾器使用

import { Injectable } from '@angular/core';@Injectable()class HeroService {}

Injectable 裝飾器

在介紹 Injectable 裝飾器前,我們先來回顧一下 HeroComponent 組件:

@Component({ selector: 'app-hero', template: ` <ul> <li *ngFor="let hero of heros"> ID: {{hero.id}} - Name: {{hero.name}} </li> </ul> `})export class HeroComponent implements OnInit { heros: Array<{ id: number; name: string }>; constructor(private heroService: HeroService, private loggerService: LoggerService) { } ngOnInit() { this.loggerService.log('Fetching heros...'); this.heros = this.heroService.getHeros(); }}

在 HeroComponent 組件的 ngOnInit 生命周期鉤子中,我們在獲取英雄信息前輸出相應的調試信息。其實為了避免在每個應用的組件中都添加 log 語句,我們可以把 log 語句放在 getHeros() 方法內。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 云浮市| 两当县| 穆棱市| 平邑县| 黑河市| 法库县| 满洲里市| 闸北区| 克东县| 保德县| 广安市| 临朐县| 湘乡市| 孟州市| 上犹县| 阿拉善左旗| 宜章县| 山西省| 岳普湖县| 景泰县| 冕宁县| 河东区| 交口县| 茂名市| 两当县| 彭州市| 玉树县| 建平县| 永济市| 香港 | 石泉县| 普洱| 哈巴河县| 湘西| 保靖县| 鄂托克前旗| 泰来县| 含山县| 荣成市| 炎陵县| 邵阳县|