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

這還是我最熟悉的package.json嗎?

開發 前端
npm 的配置還是挺多的,具體可以參考package.json官方文檔[2]。通讀了文檔之后,我略過了一些基礎的配置項,總結了一些我認為比較有用的配置項。

[[395264]]

前言

在上一篇npm init @vitejs/app的背后,僅是npm CLI的冰山一角[1]中,有提到我復習npm主要是從兩個大方向來入手,所以這篇繼續來講講package.json這部分知識,經過這輪復習,也發現了自己的很多不足,之前把常用的命令和配置玩熟了,卻沒關心npm已經有了更多新的玩法,而這些玩法卻實實在在地在解決別人的問題。

npm 的配置還是挺多的,具體可以參考package.json官方文檔[2]。通讀了文檔之后,我略過了一些基礎的配置項,總結了一些我認為比較有用的配置項。

常用配置項

files

files定義了哪些文件應該被包括在 npm install 后的 node_modules中。

當然,有些文件是自動暴露出來的,不管你是不是配置了files,比如:

  • package.json
  • README / CHANGELOG / LICENSE
  • ...

很多庫都定義了 files,避免一些不必要的文件暴露到 node_modules 中。

vite 中是這樣配置的:

  1.   "files": [ "bin""dist""client.d.ts" ] 

我之前就不知道這個配置,導致我發布的一個 npm 組件 vue-awesome-progress[3] 就暴露了源碼部分,雖然這也沒啥影響,本來就是開源的。但是這也增加了別人的資源下載量,也是一種浪費。所以,專業點的搞法還是加上files配置吧。

bin

bin 列出了可執行文件,表示你這個包要對外提供哪些腳本。

在這個包被 install 安裝時,如果是全局安裝 -g,bin 列出的可執行文件會被添加到 PATH 變量(全局可執行);如果是局部安裝,則會進入到 node_modules/.bin/ 目錄下。

bin 在一些 CLI 工具中用得很頻繁,比如 Vue CLI。

在開發 npm 包時,要求發布的可執行腳本要以#!/usr/bin/env node開頭,這是為什么呢?

我查了一下,原來是為了用于指明該腳本文件要使用 node 來執行。

main, browser, module

這三個配置對我們的影響還是挺大的。

main字段決定了別人require('xxx')時,引用的是哪個模塊對象。在不設置main字段時,默認值是index.js。

如果你開發的包是用于瀏覽器端的,那么用browser指定入口文件是最佳的選擇。

module則代表你開發的包支持ESM,并指定了一個ESM入口。

具體這三個字段怎么用,還是挺有學問的,這里推薦一篇文章package.json中你還不清楚的browser,module,main 字段優先級[4],講得挺細。

長圖警告!

scripts

scripts也基本上每天都用了,但是它的鉤子腳本你用過嗎?如果沒有用過,可以試試,在組織腳本流程時非常好用!

  • pre:在一個script執行前執行,比如prebuild,可以在打包前做一些準備工作。
  • post:在一個script執行后執行,比如postbuild,可以在打包后做一些收尾工作。

config

通過config配置的參數xxx,可以在腳本中通過npm_package_config_xxx 的形式引用,比如port。

  1.   "config": { 
  2.     "port""8080" 
  3.   } 

依賴相關

dependencies

dependencies可以理解為生產依賴,通過npm install --save安裝的依賴包都會進入到dependencies中。

devDependencies

devDependencies可以理解為開發環境依賴,通常是一些工具類的包,比如 webpack, babel等。通過npm install --save-dev安裝的依賴包都會進入到devDependencies中。

但是,在結合一些構建工具使用時,我們往往會有困惑。比如我安裝了一個包到devDependencies中,但是不小心在項目中引用了它,最后也被 webpack 打包到構建結果中了。這是怎么回事呢?

建議結合上篇文章npm install這一節[5]一起看。

peerDependencies

我是package-a,你裝我,你就必須裝我的peerDependencies。

讓“調包俠”將package-a的依賴提升到自己的node_modules中,這樣可以在“調包俠”和package-a都需要同一個依賴(比如vue)時,避免重復安裝。這常見于開發組件或者庫。

注意,一個 npm 包的開發者如果聲明了peerDependencies,開發環境下在該包目錄npm install也不會在node_modules中安裝這些依賴,所以往往還需要借助devDependencies。

舉個例子,我開發一個組件,不想發布到 npm 時包含了 vue 的代碼,這就需要外部提供 vue ,所以我把 vue 定義在 peerDependencies 也無可厚非。但是,在開發組件時,一般還需要本地開發環境跑一個 demo 試試效果,這時候是依賴 vue 的,所以還需要在 devDependencies 中安裝 vue 。我看了下 vue-router 就是這么做的,所以我在開發自己的組件時也學會了這招。

bundledDependencies

bundledDependencies跟上面的依賴都不太一樣,配置上不是鍵值對的形式,而是一個數組。

  1.   "bundledDependencies": [ 
  2.     "vue"
  3.     "vue-router" 
  4.   ] 

在運行npm pack時,會將對應依賴打包到tgz文件中。用得不多,不知道具體的細節,主要還是直接用npm install安裝 tgz 包的場景比較少,有個概念就行。

optionalDependencies

optionalDependencies用于配置可選的依賴,即使配了這個,代碼里也要做好判斷(保護),否則運行報錯就不好玩了。

  1. try { 
  2.   var foo = require('foo'
  3.   var fooVersion = require('foo/package.json').version 
  4. } catch (er) { 
  5.   foo = null 

題外話

仔細讀過package.json文檔后,整體上還是解決了我的不少困惑,對我開發 npm 組件也提供了不少幫助。如果您想了解更多細節和實戰,不妨打開我這個項目vue-awesome-progress[3]看看,希望對您有所幫助!

 

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

2024-02-02 08:50:20

Node.js元數據自動化

2022-09-30 15:35:47

json 文件前端開源

2025-08-15 13:11:10

packagejson套件

2021-09-26 06:43:08

快閃前端文件

2022-06-10 09:00:53

前端項目個JSON

2023-09-18 10:11:25

前端工具

2021-11-14 22:27:33

iOS蘋果系統

2025-11-05 08:13:52

2018-07-27 09:17:43

Windows操作系統功能

2021-03-26 21:34:30

Javasript項目工具

2020-01-13 16:57:02

iPhone 12蘋果手機

2024-01-22 11:06:47

系統后端開發

2024-02-26 07:51:08

業務系統迭代

2024-03-26 00:54:42

預測模型數據

2011-04-29 12:54:05

筆記本屏幕

2009-06-24 16:27:09

路由器定義集成服務路由

2022-10-20 13:05:53

patches文件生成

2023-11-02 08:27:29

2023-10-08 07:45:34

Npm解析服務前端

2020-06-30 20:26:10

微信功能移動應用
點贊
收藏

51CTO技術棧公眾號

在线视频你懂得| 69精品小视频| 思思久久精品视频| 欧美精品videosex| 丰满亚洲少妇av| 欧美高清视频在线| 天天躁日日躁aaaxxⅹ| 亚洲伦理一区二区| 欧美日韩另类字幕中文| 午夜久久资源| 亚洲xxxx天美| 国精品一区二区| 一区二区三区黄色| 妖精视频一区二区| 春暖花开亚洲一区二区三区| 国产精品超碰97尤物18| 久久国产一区二区| 中文字幕在线网站| 国产精品毛片| 欧美成人午夜激情| 亚洲欧美日韩第一页| 超碰精品在线| 欧美精品久久一区| 日韩一二区视频| 99re热久久这里只有精品34| 91在线精品一区二区三区| 亚洲精品免费在线视频| 午夜一区二区三区四区| 中文字幕一区二区三区欧美日韩| 一区二区三区黄色| 无人码人妻一区二区三区免费| 欧美黑人粗大| 一区二区高清免费观看影视大全| 欧美 日韩 国产在线| 农村少妇久久久久久久| 男女男精品视频网| 亲爱的老师9免费观看全集电视剧| 九九视频在线免费观看| 久久视频在线| 日韩av在线免播放器| 少妇献身老头系列| 久久综合给合| 91精品国产免费| 欧美成人手机在线视频| 欧美一级在线| 欧美群妇大交群中文字幕| 播放灌醉水嫩大学生国内精品| 国产蜜臀av在线播放| 国产欧美日韩综合| 欧美污视频久久久| 久久av少妇| 国产日本亚洲高清| 日韩精品无码一区二区三区| 蜜桃久久一区二区三区| 国产精品99精品久久免费| 国产精品偷伦一区二区| a片在线免费观看| 奇米影视一区二区三区| 国产精品视频不卡| 岳乳丰满一区二区三区| 九九国产精品视频| 91在线在线观看| 91精东传媒理伦片在线观看| 99在线热播精品免费99热| 久久久久亚洲精品| 自拍偷拍欧美亚洲| 久久久久久久欧美精品| 国产精品久久网| 一级黄色片在线播放| 久久国产精品露脸对白| 国产精品综合网站| 国产精品一级二级| 成人深夜在线观看| 欧美日本韩国国产| 日韩黄色影院| 亚洲一区中文日韩| 国语对白做受xxxxx在线中国| 日本三级一区| 欧美日本国产视频| 99热这里只有精品2| 精品av导航| 亚洲欧洲自拍偷拍| 亚洲女人毛茸茸高潮| 欧美另类视频| 国产成人在线一区| 国产免费黄色网址| 91亚洲国产成人精品一区二区三| 欧美裸体网站| 91精品国产91久久久久久青草| 亚洲超碰97人人做人人爱| 久久综合色视频| 欧美成人毛片| 亚洲国产成人精品一区二区| 美国黄色特级片| 国产精品扒开腿做爽爽爽软件| 97av在线视频| 一区二区三区日| 国产91精品露脸国语对白| 精品国产一区二区三区麻豆免费观看完整版| 精彩国产在线| 亚洲午夜日本在线观看| 成人羞羞国产免费网站| 国模大尺度视频一区二区| 欧美成人三级在线| 欧美一区二区三区粗大| 欧美日韩中文| 国产精品91在线| 丰满人妻一区二区三区无码av | 日韩黄色av| 亚洲成av人乱码色午夜| 波兰性xxxxx极品hd| 欧美成人午夜| 51精品在线观看| 最近中文字幕在线免费观看| www.成人网.com| 一本色道久久综合亚洲精品婷婷| 青青青国内视频在线观看软件| 欧美在线观看视频在线| 亚洲久久久久久| 亚洲精品网址| 国产精品久久久久久久app| 女人18毛片水真多18精品| 日韩码欧中文字| 另类小说第一页| 国产精品一区二区精品| 尤物yw午夜国产精品视频| 五月天婷婷激情| 成人免费视频一区二区| 天堂а√在线中文在线 | 精品婷婷伊人一区三区三| 2018国产精品| 午夜激情一区| 99国精产品一二二线| 成人全视频高清免费观看| 欧美日韩免费区域视频在线观看| 国产精品99精品无码视亚| 亚洲九九在线| 92看片淫黄大片看国产片| 免费a级毛片在线播放| 欧美亚洲丝袜传媒另类| 精品人妻一区二区三区蜜桃视频| 亚洲一本二本| 亚洲xxx视频| 成a人片在线观看| 欧美一二三四区在线| 成人在线观看小视频| 久久国产人妖系列| 欧美一级日本a级v片| 免费看av不卡| 亚洲人成电影网站色xx| 国产精品久久久久久久久久久久久久久久久 | 8x拔播拔播x8国产精品| 天堂中文在线观看视频| 亚洲国产日日夜夜| 亚洲の无码国产の无码步美| 在线综合亚洲| 青青草原亚洲| 欧美性生活一级| 色噜噜国产精品视频一区二区| 国产黄色片免费看| 久久久久久9999| 久热在线视频观看| 精品国产乱码久久久久久蜜坠欲下| 国产精品成人一区| 欧美96在线| 精品欧美乱码久久久久久| 久久99久久久| 成人免费电影视频| 免费无码av片在线观看| 久久精品亚洲成在人线av网址| 高清欧美性猛交xxxx黑人猛交| 天天干天天舔天天射| 欧美性xxxx极品hd满灌| 国产精品久久久久久久av| 免费不卡在线视频| 无码人妻精品一区二区蜜桃百度| 久草精品视频| 国产精品欧美一区二区| 乱人伦中文视频在线| 欧美精品日日鲁夜夜添| 久久精品女人毛片国产| 国产亚洲va综合人人澡精品| 欧美精品 - 色网| 亚洲巨乳在线| 亚洲综合欧美日韩| 免费一级欧美在线大片| 欧美重口另类videos人妖| 激情在线小视频| 日韩精品一区二区三区视频 | huan性巨大欧美| 日韩美女av在线| 亚洲精品国产精品乱码视色| 自拍偷自拍亚洲精品播放| 两女双腿交缠激烈磨豆腐| 亚洲国产精品一区| 一级特黄录像免费播放全99| 51vv免费精品视频一区二区| 国产99久久精品一区二区| 成年人在线视频| 欧美精品一区二| 一区二区 亚洲| 欧美视频国产精品| 日本a级片视频| 国产三级三级三级精品8ⅰ区| 四虎成人在线播放| 日韩成人av影视| 免费在线观看视频a| 91欧美在线| 日韩av影视| 未满十八勿进黄网站一区不卡| 性欧美xxxx视频在线观看| av电影在线播放高清免费观看| 亚洲国产高清自拍| 中文字幕你懂的| 亚洲一区中文日韩| 国产精品视频一区二区三 | 欧美极品影院| 久久久之久亚州精品露出| 免费日本一区二区三区视频| 亚洲精品ady| 欧美一级片免费| 欧美一区二区三区播放老司机| 最近中文字幕免费观看| 五月综合激情网| 久久久久久久黄色| 椎名由奈av一区二区三区| 免费一级黄色录像| 国产情人综合久久777777| 国产免费看av| 99精品视频免费在线观看| 中文字幕在线国产| 国产高清一区日本| 伊人影院在线观看视频| 国产自产高清不卡| 婷婷中文字幕在线观看| 美女国产一区二区| 亚洲欧美在线精品| 久久一二三区| 国产第一页视频| 日韩国产精品久久久久久亚洲| 日韩免费毛片视频| 三级欧美韩日大片在线看| 久草热视频在线观看| 日韩一级欧洲| 国产淫片免费看| 国产日韩欧美高清免费| 一女被多男玩喷潮视频| 亚洲欧美日韩专区| 日韩精品一区二区三区色欲av| 伊人精品成人久久综合软件| 欧美中文字幕在线观看视频| 欧美阿v一级看视频| 一区二区精品在线| 日韩成人综合| 蜜臀在线免费观看| 一区二区亚洲精品| 免费在线a视频| 日韩激情视频在线观看| 超碰超碰在线观看| 国产一区高清在线| 欧美双性人妖o0| 久久综合国产精品| www久久久久久久| 中文在线免费一区三区高中清不卡| 日韩一区二区三区四区视频| 国产精品水嫩水嫩| av成人免费网站| 污片在线观看一区二区| 久久久久久久久久久久久久av| 欧美午夜激情视频| 国产精品国产一区二区三区四区| 日韩午夜激情电影| 熟妇人妻中文av无码| 亚洲午夜久久久久久久| 国产成人l区| 7777精品视频| 日韩护士脚交太爽了| 成人一区二区在线| 色狼人综合干| 中文字幕乱码一区二区三区| 国产精品啊v在线| 日韩欧美xxxx| 国产精品99久久久久久久vr| 37p粉嫩大胆色噜噜噜| 国产偷国产偷亚洲高清人白洁| 手机免费观看av| 亚洲国产美女搞黄色| 人妻中文字幕一区二区三区| 精品国产乱码久久久久久久久| 精品乱码一区二区三四区视频| 欧美猛交免费看| 欧美性片在线观看| 97在线电影| 日本成人手机在线| 欧美一区二区综合| 红桃视频国产精品| 亚洲欧美国产中文| 91一区二区三区在线观看| 免费黄色国产视频| 亚洲国产一区在线观看| 中文字幕日本人妻久久久免费| 日韩欧美三级在线| 香蕉视频在线看| 欧美一区二区三区免费视| 国产精品中文| 欧美资源一区| 欧美日韩国内| 成人在线观看黄| 国产一区在线看| 丰满少妇高潮一区二区| 一区二区三区在线免费播放| 夜夜躁日日躁狠狠久久av| 亚洲激情国产精品| 男人的天堂在线视频免费观看 | 久久精品国产欧美亚洲人人爽| 人人草在线视频| 超碰在线97av| 欧美一区电影| 黑人糟蹋人妻hd中文字幕| 国产99精品国产| 国产1区2区3区4区| 在线不卡a资源高清| 91大神在线网站| 久久久噜噜噜久久久| 欧美激情三级| 欧洲精品亚洲精品| 国产农村妇女毛片精品久久莱园子 | 日本一区二区三区视频免费看| 亚洲麻豆视频| 伊人网综合视频| 亚洲高清中文字幕| 动漫av一区二区三区| 美女久久久久久久| 在线成人免费| 亚洲高清乱码| 久久黄色级2电影| 久久一级免费视频| 欧美日韩国产系列| 免费网站成人| 91亚洲人电影| 一区二区三区四区日韩| 高潮一区二区三区| 中文字幕一区二区三区不卡在线 | 毛片无码国产| 欧美一区二区在线| 免费在线观看一区二区三区| 舐め犯し波多野结衣在线观看| 91成人免费网站| 91网在线播放| 国产日韩精品视频| 99精品在线免费在线观看| 99精品视频国产| 一区二区三区日韩精品| 国产熟女一区二区丰满| 色在人av网站天堂精品| 国产无遮挡裸体免费久久| 精品国产一二三四区| 国产三级一区二区三区| 亚洲午夜激情视频| 久久久精品免费视频| 电影中文字幕一区二区| 强开小嫩苞一区二区三区网站| 国内精品视频一区二区三区八戒| 午夜激情福利网| 亚洲电影av在线| 黄色成人免费网| 一区二区三区欧美成人| 国产福利一区二区三区在线视频| 黄色录像二级片| 欧美成人a∨高清免费观看| 视频免费一区| 成人激情av| 鲁大师影院一区二区三区| www.黄色com| 亚洲成人av在线| 成人国产精品一区二区免费麻豆| 波多野结衣三级在线| 成人av先锋影音| 一区二区三区在线观看av| 中文字幕日韩高清| 麻豆视频久久| 99精品人妻少妇一区二区| 国产精品久久久久三级| 国产18精品乱码免费看| 国产精品看片资源| 亚洲先锋成人| 夫妇交换中文字幕| 亚洲大胆人体在线| 日韩一区二区三免费高清在线观看| 国产精品igao激情视频| 久久久99精品久久| 国产成人免费看一级大黄| 日本高清久久天堂| 欧美天天在线| 怡红院一区二区三区| 欧美精品一区二区三区蜜臀| 日韩精品免费观看视频| 日本在线xxx| 亚洲欧美日韩在线| av在线免费观看网站|