精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

改造 console.log!也能提高團隊開發效率?

開發 前端
說到獲取代碼節點,進行修改,第一時間肯定是想到抽象語法樹,也就是AST,我們到https://astexplorer.net/這個網站上,輸入我們剛剛寫的那些代碼,我們可以看到console.log會被解析成有辨識度的代碼節點,所以我們也可以遍歷這個AST并拿到我們想要的代碼節點。

背景

最近在幫助團隊中一位前端開發定位問題時,發現他是通過控制臺的打印,也就是console.log去打印,然后通過打印的東西,去看是否達到預期的結果,比如他在Login/Index.vue中寫了這么一段代碼:

let name = null
// ...coding 對name進行處理

// 最后輸出 name
console.log('我是Index.vue', name)

這個時候肯定是馬上打開網頁,查看控制臺,看看 name 這個變量的值是否達到預期,但是一看控制臺,懵逼了(下面是例子,但是真實項目中超級多的打印)

圖片圖片

為什么懵逼呢?因為項目中很多個文件都是這么打印的。。。這時候就出現兩個問題了:

  • 1、很多個文件都命名為Index.vue怎么知道哪個打印是我想看的那個?
  • 2、我打印的是 name,怎么確定哪個打印的是name呢?

這個時候,怎么解決呢?一個一個點進源碼里看嗎?

圖片圖片

那可太累了,只有兩個文件還好,如果是十個,二十個呢?那不是累死了!!!

所以很多人第一選擇肯定是回去改代碼,讓代碼更加準確地表達

let name = null
// ...coding 對name進行處理

// 最后輸出 name
console.log('我是/Login/Index.vue', 
            `name = ${name}`)

這時候我們就可以準確地看到我們想看到的那個文件的輸出

圖片圖片

思考

考慮到現在項目中已經有很多這樣的console.log了,且因為以前的人不注意,導致了輸出的東西表達的意義不是很明確,所以代碼的可維護性大大降低

console.log其實也是開發階段很重要的一部分

剛剛在 Login/Index.vue 那個例子中,我們最后是通過修改輸出,進而準確地看到我們想看的文件輸出,但是這樣還是得人為去改,我們能不能做到自動呢?比如有兩個Index.vue

// login/Index.vue
const name = 'sunshine_lin'
const age = 20
console.log(name, age)

// team/Index.vue
const name = 'sunshine_lin'
const age = 20
const gender = '男'
console.log(name, age, gender)

我希望是控制臺能自動輸出這樣:

圖片圖片

這樣能通過文件路徑看到具體是哪一個文件輸出的信息,并且都能看到每一個輸出值所對應的變量名

所以我開發了兩個插件來實現這個功能(非常感謝暴走老七大佬,我好多代碼都是學他的~)

  • vite-perfect-console-plugin: 適用于 vite 項目
  • babel-plugin-perfect-console: 適用于 webpack 項目

源碼鏈接: https://github.com/sanxin-lin/clear-console-plugins

使用方法很簡單

// vite 項目
npm i vite-perfect-console-plugin
// vite.config.ts
import VitePerfectConsolePlugin from 'vite-perfect-console-plugin'

defineConfig({
  plugins: [
    //...plugins
    // tip 默認是 ????????????
    VitePerfectConsolePlugin({ tip: '????????????' }),
  ],
})

// webpack 項目
npm i babel-plugin-perfect-console
// babel.config.js
module.exports = {
  plugins: [
    // ...plugins
    [
      'perfect-console',
      // tip 默認是 ????????????
      {
        tip: '????????????',
      },
    ],
  ],
}

接下來就說說開發這兩個插件的思路吧~

想做什么?

其實你項目中寫的代碼,最后都會打成產物,那我們只需要在打包成產物的某一個時間點,去獲取到這些console.log,并補上我們想輸出的東西就行了,我們想補上的信息有:

  • 文件的路徑
  • 輸出值對應的變量

抽象語法樹(AST)

說到獲取代碼節點,進行修改,第一時間肯定是想到抽象語法樹,也就是AST,我們到https://astexplorer.net/這個網站上,輸入我們剛剛寫的那些代碼,我們可以看到console.log會被解析成有辨識度的代碼節點,所以我們也可以遍歷這個AST并拿到我們想要的代碼節點

圖片圖片

思路

思路就是:

1、把代碼轉換成抽象語法樹

2、遍歷抽象語法樹,查到每一個console.log節點,并塞入我們想要輸出的內容

3、將抽象語法樹轉換成代碼

圖片圖片

這三步要用到 babel 的一些方法

  • parse:將代碼轉成AST
  • generate:將AST轉成代碼

Webpack和Vite的區別

Webpack 和 Vite 中去開發這個插件,是不同的,但是都是要用到 babel,只不過時機不同

  • Webpack:可以直接開發一個Babel插件,就可以在Webpack打包的過程中去加上我們想要的打印內容
  • Vite:需要在transform的鉤子函數中,去引入babel手動進行轉換代碼,進而加上我們想要的打印內容

圖片圖片

代碼 + 注釋說明

非常感謝暴走老七大佬,我好多代碼都是學他的~

本文章源碼鏈接: https://github.com/sanxin-lin/clear-console-plugins

Vite插件

圖片圖片

Webpack Babel 插件

圖片 圖片

責任編輯:武曉燕 來源: 前端之神
相關推薦

2020-03-25 08:26:44

console.log前端

2021-03-17 08:53:21

JavaScript開發代碼

2018-01-26 10:42:44

前端JavascriptConsole對象

2025-01-06 05:20:00

前端開發定位

2023-08-31 09:10:18

JavaScript調試

2023-02-24 08:00:00

2020-01-09 08:26:16

代碼JS開發

2024-03-18 07:56:49

CSSJS代碼調試

2024-10-29 12:54:27

2021-04-27 06:52:49

團隊研發效率

2018-09-27 09:00:00

DjangoPython

2025-02-14 11:04:07

JavaScript開發函數

2022-08-22 08:32:17

招聘函數string

2020-05-07 10:25:13

工作效率遠程辦公CIO

2014-06-12 08:53:01

團隊團隊效率

2024-05-21 10:40:09

開發前端裝飾器

2015-11-02 17:11:38

RelProxyJava開發效率

2025-07-23 08:34:10

VSCode插件前端

2021-09-07 07:53:43

Console函數DOM

2012-02-02 15:04:02

軟件開發
點贊
收藏

51CTO技術棧公眾號

国产精品免费一区二区三区在线观看| 国产校园另类小说区| 日韩在线视频免费观看| 五月激情五月婷婷| 国产黄色在线网站| 国产suv一区二区三区88区| 欧美风情在线观看| 中文字幕一区二区久久人妻网站| 国产激情小视频在线| 国产成人在线影院| 2020国产精品视频| 波多野结衣一二三四区| 久久爱www.| 偷拍日韩校园综合在线| 亚洲aⅴ天堂av在线电影软件| 亚洲自拍偷拍另类| 在线看片欧美| 原创国产精品91| 在线免费黄色小视频| 国产社区精品视频| 中文成人av在线| 国产精品对白一区二区三区| 黄色片中文字幕| 香蕉视频官网在线观看日本一区二区| 精品国产免费人成在线观看| 色婷婷综合久久久久中文字幕| aaa日本高清在线播放免费观看| 国产高清精品网站| 8x拔播拔播x8国产精品| 国产又黄又粗又猛又爽的| 香蕉免费一区二区三区在线观看| 欧美视频第一页| 制服诱惑一区| 国产午夜在线视频| 国产激情91久久精品导航| 热re91久久精品国99热蜜臀| 18岁成人毛片| 亚洲激情77| 欧美一级在线免费| 免费观看成人网| 美女航空一级毛片在线播放| 欧美国产欧美亚州国产日韩mv天天看完整| 5566av亚洲| 国产成人av免费| 国产精品老牛| 日韩一区二区久久久| 亚洲图片综合网| 日本精品一区二区三区在线观看视频| 亚洲不卡av一区二区三区| 亚洲午夜精品一区二区三区| 亚洲欧美色视频| 精品无人区卡一卡二卡三乱码免费卡 | 欧美一级生活片| 亚洲免费看av| 欧美成人ⅴideosxxxxx| 亚洲一区自拍偷拍| 欧美性受黑人性爽| 在线观看免费黄色| 欧美韩国日本综合| 欧美日韩综合精品| 色鬼7777久久| 久久综合狠狠综合久久激情 | 一区二区www| 日韩成人精品在线| 久久久视频精品| 久久国产精品二区| 欧美日韩天堂| 欧美激情综合亚洲一二区| 欧美风情第一页| 亚洲五月综合| 久久国产精品免费视频| 三上悠亚在线观看视频| 97久久夜色精品国产| 日韩中文字幕精品| 精品伦精品一区二区三区视频密桃| 视频一区在线观看| 国产一区二区三区精品久久久 | 狠狠97人人婷婷五月| av日韩国产| 亚洲国产美女搞黄色| 中文精品无码中文字幕无码专区 | 国产模特av私拍大尺度| 精品一区二区免费视频| 91夜夜未满十八勿入爽爽影院 | 午夜一区在线| 日本一区二区不卡| 中文字幕777| 九九精品视频在线看| 成人激情电影一区二区| 国产乱叫456在线| 国产美女娇喘av呻吟久久| 97免费资源站| 日韩精品视频无播放器在线看| 91免费版在线看| 天堂精品视频| 羞羞网站在线看| 婷婷综合在线观看| 欧美精品性生活| 国产人与zoxxxx另类91| 日韩视频123| 少妇一级淫片免费放播放| 欧美男gay| 久久精品人人做人人爽| 久久99久久98精品免观看软件 | 中文字幕亚洲图片| 日韩成人短视频| 亚洲精品乱码久久久久久蜜桃麻豆| 18久久久久久| 中文字幕一区二区人妻痴汉电车| 韩日精品视频一区| 精品欧美日韩在线| 免费在线看黄网站| 亚洲mv大片欧洲mv大片精品| 99久久激情视频| 精品亚洲二区| 亚洲美女福利视频网站| 欧美做爰啪啪xxxⅹ性| 在线播放日韩| 青草青草久热精品视频在线网站 | 在线观看中文字幕不卡| 亚洲一区二区偷拍| 亚洲成a人片77777在线播放| 久久精品国产精品亚洲| 青青操免费在线视频| 国模少妇一区二区三区| 久久影院理伦片| 污污在线观看| 欧美私人免费视频| 日韩成人av影院| 久久免费大视频| 68精品久久久久久欧美| 国产99久久九九精品无码免费| 国产清纯美女被跳蛋高潮一区二区久久w| 一级黄色录像免费看| 成人性生交大片免费观看网站| 欧美精品 国产精品| 青青草视频播放| 欧美特黄一区| 91在线网站视频| av免费在线一区二区三区| 午夜私人影院久久久久| 国产精品中文久久久久久| 欧美裸体在线版观看完整版| 欧美一区二区影院| 风流老熟女一区二区三区| 中文字幕制服丝袜一区二区三区| 人妻熟女一二三区夜夜爱| swag国产精品一区二区| 美乳少妇欧美精品| 一级视频在线播放| 国产精品美日韩| 91看片在线免费观看| 国产一区二区三区四区| 欧美性在线视频| 午夜av免费在线观看| 亚洲精品视频一区二区| 日本精品一区在线| av一区二区高清| 国产精品久久久91| 精品乱码一区二区三四区视频| 欧美日韩国产一区二区| 大桥未久恸哭の女教师| 精品1区2区3区4区| 国产偷久久久精品专区| a级大胆欧美人体大胆666| 欧美精品一区二区三区蜜臀 | 青青草这里只有精品| 欧美日韩不卡合集视频| www.成人在线观看| 亚洲精品乱码久久久久久| 人人干人人视频| 欧美码中文字幕在线| 国产精品欧美在线| www视频在线观看免费| 欧美中文字幕亚洲一区二区va在线| 欧美性猛交xxxx乱| 免费看精品久久片| 天堂v在线视频| 麻豆久久一区| 国内精品伊人久久| 日韩午夜影院| 欧美视频一区二区三区四区| 夫妇露脸对白88av| 精品一区二区在线免费观看| 国产又粗又大又爽的视频| 精品三级国产| 久久人人爽人人| 欧美色综合一区二区三区| 色婷婷香蕉在线一区二区| 韩国三级hd中文字幕| 麻豆精品视频在线观看视频| 最近免费观看高清韩国日本大全| 成人午夜大片| 国产91露脸中文字幕在线| av电影在线网| 日韩欧美色综合网站| 日本视频免费在线| 国产欧美日韩在线| 熟妇无码乱子成人精品| 日韩一级免费| 一本色道婷婷久久欧美| 一区中文字幕| 国产91精品网站| 亚洲wwwww| 亚洲欧洲日产国产网站| 国产尤物在线观看| 精品福利在线视频| 亚洲黄色小说视频| 国产成人三级在线观看| 激情六月丁香婷婷| 亚洲成人一区| 久久国产一区| 日韩第一区第二区| 国产精品h片在线播放| 少女频道在线观看免费播放电视剧| 日韩精品一二三四区| 一女二男一黄一片| 欧美日韩中文字幕在线| 999精品视频在线观看播放| 成人免费高清视频| 亚洲另类第一页| 久久久久久一区二区| 中国丰满熟妇xxxx性| 日韩不卡一区| 久久精品人成| 中文久久电影小说| 国产日韩在线亚洲字幕中文| 女海盗2成人h版中文字幕| 久久九九全国免费精品观看| 欧美日韩伦理片| 亚洲а∨天堂久久精品喷水| 91亚洲精品国偷拍自产在线观看 | 最近2019好看的中文字幕免费| 懂色av蜜臀av粉嫩av分享吧| 51精品久久久久久久蜜臀| 日日夜夜操视频| 精品国产鲁一鲁一区二区张丽 | 偷拍精品一区二区三区| 欧美伦理视频网站| 日日摸天天添天天添破| 亚洲国产精品尤物yw在线观看| 国产成人免费在线观看视频| 久久尤物电影视频在线观看| 亚洲精品第二页| 国产久卡久卡久卡久卡视频精品| 嫩草影院国产精品| 免费日韩av片| 91视频最新入口| 日韩一级欧洲| 国产美女主播在线播放| 一区二区蜜桃| 裸体裸乳免费看| 亚洲第一偷拍| 国产精品一区在线免费观看| 97国产成人高清在线观看| 婷婷精品国产一区二区三区日韩| 九九久久婷婷| 欧美一区二区综合| 国产成人1区| 日本欧美精品久久久| 亚洲资源网你懂的| 久久精品日产第一区二区三区| 自拍亚洲一区| 亚洲激情图片| 欧美在线免费| 分分操这里只有精品| 伊人成人在线| 激情婷婷综合网| 久久99这里只有精品| 91丨porny丨九色| 不卡电影一区二区三区| 人妻精品久久久久中文字幕| 欧美国产精品一区二区| 91视频青青草| 午夜精品123| 国产九色91回来了| 欧美一区二区三区啪啪| 天天操天天干天天爱| 亚洲欧美激情在线视频| 精品51国产黑色丝袜高跟鞋| 久久久亚洲网站| 影视一区二区三区| 亚洲a区在线视频| 亚洲成人一品| 国产又粗又爽又黄的视频| 99精品久久久| theporn国产精品| 99久久99精品久久久久久 | 综合电影一区二区三区| 久久精品美女视频| 欧美性视频一区二区三区| 国产福利第一页| 亚洲人午夜精品| 尤物视频在线看| 国产成人精品免费久久久久| 精品一区二区三区免费看| 欧美精品一区二区三区在线看午夜| 天天射天天综合网| 亚洲中文字幕无码专区| 国内成人精品2018免费看| 亚洲精品视频大全| 亚洲欧美国产三级| 69av视频在线观看| 精品国产乱码久久久久久影片| 成a人片在线观看www视频| 欧美激情欧美激情在线五月| 播放一区二区| 精品国产aⅴ麻豆| 欧美二区视频| www.cao超碰| 国产欧美一区视频| 日韩欧美视频在线免费观看| 4438亚洲最大| 97在线观看免费观看高清 | 日本欧美韩国国产| 成年在线观看视频| 久久99精品一区二区三区 | 亚洲一区免费在线观看| 91禁在线观看| 国产亚洲一区二区精品| 韩国精品一区| 国产精品久久久久免费| 91精品亚洲| 性欧美在线视频| 国产精品久久久爽爽爽麻豆色哟哟 | 国产精品99在线观看| 亚洲人成无码www久久久| av资源站一区| 日本三级免费看| 日韩三区在线观看| 在线欧美三级| 9a蜜桃久久久久久免费| 亚洲啊v在线观看| jizz欧美性11| 欧美国产日韩一二三区| 免费黄色片视频| 国产一区二区三区直播精品电影| 伊人久久视频| 欧美日韩亚洲一区二区三区四区| 亚洲全部视频| 黄色av网址在线观看| 亚洲影院理伦片| 亚洲精品视频网| 欧美大胆在线视频| theporn国产在线精品| 全黄性性激高免费视频| 成人免费视频一区| 国内免费精品视频| 亚洲人成网站在线播| 成人欧美大片| 亚洲精品一卡二卡三卡四卡| 日韩电影在线观看一区| 69xxx免费| 日韩一区二区中文字幕| 少女频道在线观看免费播放电视剧| av免费观看久久| 一本色道久久综合| 久久精品一区二区免费播放| 欧美天天综合色影久久精品| 你懂得在线网址| 国产精品视频久久| 这里只有精品在线| 欧美熟妇精品一区二区蜜桃视频| 香蕉成人伊视频在线观看| 亚洲欧美日韩成人在线| 国产精品久久久久久av福利软件| 欧美在线电影| 青青草原播放器| 亚洲成av人片在线观看无码| 你懂的视频在线免费| 国产欧美欧洲在线观看| 午夜精品久久久久99热蜜桃导演| 国产女人18毛片水真多18 | 精品久久久久久久无码| 国产精品免费免费| 亚洲精品综合久久| 日韩av电影国产| 亚洲91中文字幕无线码三区| 2018国产精品| 91国产视频在线观看| 91精选在线| 欧美一区二区高清在线观看| 精品一区二区三区香蕉蜜桃| 日本一级黄色录像| 亚洲丝袜av一区| 日本亚洲视频| 能在线观看的av网站| 亚洲蜜臀av乱码久久精品蜜桃| 欧美亚洲精品在线观看| 国产精品扒开腿做| 欧美96在线丨欧| 亚洲黄色免费视频| 日韩精品一区二区在线| 奇米777日韩| 人人妻人人做人人爽| 国产精品毛片a∨一区二区三区| 午夜免费福利视频| 国产精品久久久av| 99精品国产在热久久下载| 一级免费黄色录像|