搜尋
首頁web前端js教程聊聊Angular+Service如何改進日誌功能
聊聊Angular+Service如何改進日誌功能Sep 17, 2021 am 10:24 AM
angularservice紀錄

如何改善Angular的日誌使用方式?以下這篇文章跟大家介紹一下使用Angular中的Service管理控制台輸出,改進日誌功能的方法,希望對大家有幫助!

聊聊Angular+Service如何改進日誌功能

改善在Angular 應用程式中的日誌使用方式

Angular是一個非常受歡迎的開發框架,前端開發者喜歡在應用程式中使用console去調試它們的程式碼,但是由於持續交付/部署的需要,這些調試程式碼會被刪除,不會進入生產發布環境中。 【相關教學推薦:《angular教學》】

聊聊Angular+Service如何改進日誌功能

#讓Angular 幫我們實作這個功能

Angular 為我們提供了將Services 註冊到應用程式中的功能,使得我們可以在元件中重複使用一些功能。

因此,我們可以利用Service來管理我們的控制台輸出,從而改進日誌功能。

1 #: 使用Service來管理console

import { Injectable } from '@angular/core';
@Injectable({
  providedIn: 'root'
})
export class LogService {

  constructor() {

  }
  trace(...data: any[]): void {
    console.trace(data);
  }
  log(...data: any[]): void {
    console.log(data);
  }
}

AppComponent元件中使用它::

logService.log('console executed from AppComponent');

聊聊Angular+Service如何改進日誌功能

上面的程式碼很容易理解,但是有一個問題,我們無法得知日誌正在應用的哪一個元件中列印的,除非我們在日誌訊息中表明,例如圖中的日誌資訊表明它來自於AppComponent元件,我們希望日誌的右側能自動表明它來自哪個元件,而不是定義整個日誌系統的檔案位元log.service.ts:xx,也不需要我們在日誌訊息中手動表明。

1.1: 使用logService.trace()

它可以用來追蹤日誌的來源,看起來很不錯,但實際上它會增加一些不必要的日誌記錄。

2: logService增強版

import { Injectable } from '@angular/core';
@Injectable({
  providedIn: 'root'
})
export class LogService {

  constructor() {

  }
  trace(source: string, ...data: any[]): void {
    console.trace(data);
  }
  log(source: string, ...data: any[]): void {
    console.log(data);
  }
}

與前面相比,增強版的logService類別的方法接收額外的參數。

logService.log('AppComponent','console executed from AppComponent');

聊聊Angular+Service如何改進日誌功能

很好

以上是聊聊Angular+Service如何改進日誌功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:掘金--JaylenL。如有侵權,請聯絡admin@php.cn刪除
聊聊Angular中的元数据(Metadata)和装饰器(Decorator)聊聊Angular中的元数据(Metadata)和装饰器(Decorator)Feb 28, 2022 am 11:10 AM

本篇文章继续Angular的学习,带大家了解一下Angular中的元数据和装饰器,简单了解一下他们的用法,希望对大家有所帮助!

angular学习之详解状态管理器NgRxangular学习之详解状态管理器NgRxMay 25, 2022 am 11:01 AM

本篇文章带大家深入了解一下angular的状态管理器NgRx,介绍一下NgRx的使用方法,希望对大家有所帮助!

浅析angular中怎么使用monaco-editor浅析angular中怎么使用monaco-editorOct 17, 2022 pm 08:04 PM

angular中怎么使用monaco-editor?下面本篇文章记录下最近的一次业务中用到的 monaco-editor 在 angular 中的使用,希望对大家有所帮助!

项目过大怎么办?如何合理拆分Angular项目?项目过大怎么办?如何合理拆分Angular项目?Jul 26, 2022 pm 07:18 PM

Angular项目过大,怎么合理拆分它?下面本篇文章给大家介绍一下合理拆分Angular项目的方法,希望对大家有所帮助!

聊聊自定义angular-datetime-picker格式的方法聊聊自定义angular-datetime-picker格式的方法Sep 08, 2022 pm 08:29 PM

怎么自定义angular-datetime-picker格式?下面本篇文章聊聊自定义格式的方法,希望对大家有所帮助!

Angular + NG-ZORRO快速开发一个后台系统Angular + NG-ZORRO快速开发一个后台系统Apr 21, 2022 am 10:45 AM

本篇文章给大家分享一个Angular实战,了解一下angualr 结合 ng-zorro 如何快速开发一个后台系统,希望对大家有所帮助!

聊聊Angular Route中怎么提前获取数据聊聊Angular Route中怎么提前获取数据Jul 13, 2022 pm 08:00 PM

Angular Route中怎么提前获取数据?下面本篇文章给大家介绍一下从 Angular Route 中提前获取数据的方法,希望对大家有所帮助!

浅析Angular中的独立组件,看看怎么使用浅析Angular中的独立组件,看看怎么使用Jun 23, 2022 pm 03:49 PM

本篇文章带大家了解一下Angular中的独立组件,看看怎么在Angular中创建一个独立组件,怎么在独立组件中导入已有的模块,希望对大家有所帮助!

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具