精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

少妇无套高潮一二三区| 欧美日韩亚洲一区二区三区在线观看 | 亚洲成av人片在线观看香蕉| 欧美视频在线第一页| 亚洲精品视频专区| 国产精品普通话对白| 国产丝袜一区视频在线观看 | 狠狠躁夜夜躁久久躁别揉| 精品一区二区日本| 一级黄色片免费| 国产精品红桃| 亚洲视频在线播放| 久久精品一卡二卡| 成av人片在线观看www| 久久综合网色—综合色88| 国产精品中文字幕在线观看| 久久久久成人网站| 视频一区在线观看| 日韩免费高清av| 一本久道综合色婷婷五月| 国产区在线观看| 99久久精品国产精品久久| 国产精品一区二区三区毛片淫片 | 区一区二在线观看| 欧美在线亚洲| 亚洲视频在线观看| 国产人妻黑人一区二区三区| 欧洲亚洲精品久久久久| 黑人巨大精品欧美一区二区免费| 亚洲欧美国产一区二区| 天堂在线一二区| 激情久久五月天| 欧美在线www| 91人妻一区二区三区蜜臀| 综合干狼人综合首页| 欧美一区二区精美| 亚洲五月天综合| 1区2区3区在线| 亚洲三级理论片| 精品日产一区2区三区黄免费| 国产精品高潮呻吟久久久| 亚洲国产高清视频| 九九视频这里只有精品| 特级西西人体高清大胆| 亚洲精品无吗| 亚洲第一福利网| 日批视频在线看| 天堂久久一区| 欧美日韩在线综合| 好男人www社区| 在线观看网站免费入口在线观看国内| 一区二区三区在线播| 在线观看一区二区三区三州 | 国产不卡视频在线播放| 91九色精品视频| 在线播放成人av| 日本特黄久久久高潮| 日韩av电影手机在线观看| 久久久久久久福利| 亚洲午夜精品一区二区国产 | www.桃色.com| 69精品久久久| 真实国产乱子伦精品一区二区三区| 中文字幕欧美日韩精品| 中文字幕免费视频| 九色精品91| 亚洲美女av在线播放| 亚洲精品98久久久久久中文字幕| 国产日产欧美视频| 性欧美18xxxhd| 欧美日韩综合视频网址| 日韩欧美亚洲天堂| 成人免费直播| 在线观看91视频| 国产高清视频网站| 亚洲午夜国产成人| 欧美一卡二卡在线观看| 性生交大片免费看l| silk一区二区三区精品视频| 精品电影一区二区| 国产精品无码在线| 激情五月综合| 中文字幕在线视频日韩| 黄视频网站免费看| 影音先锋久久精品| 欧美做受高潮电影o| 色老头一区二区| 久久成人18免费观看| 91精品国产综合久久久久久丝袜| 成人久久久精品国产乱码一区二区| 成人动漫一区二区| 日韩成人av网站| 麻豆影视在线观看_| 亚洲美女在线一区| 337p粉嫩大胆噜噜噜鲁| 播放一区二区| 欧美久久久久中文字幕| 国产精品欧美性爱| 国产日产精品一区二区三区四区的观看方式 | 日本免费新一区视频| 成人免费视频网| 黄色美女一级片| 国产婷婷精品av在线| 久久久成人精品一区二区三区| 蜜臀av国内免费精品久久久夜夜| 日韩欧美高清在线视频| 成人av毛片在线观看| 久久久精品国产**网站| 最近2019中文字幕在线高清| 精品无码免费视频| 日本大胆欧美人术艺术动态 | 久久97久久97精品免视看秋霞| 亚洲视频欧洲视频| 国产一级片免费| 三级影片在线观看欧美日韩一区二区| 91久久中文字幕| 人成在线免费视频| 亚洲激情欧美激情| 中文字幕在线观看第三页| 亚洲精品午夜| 在线精品91av| 精品国产免费观看| 国产精品一品视频| 无码免费一区二区三区免费播放 | 97在线看福利| 97超碰中文字幕| 久久免费午夜影院| 蜜臀av色欲a片无码精品一区| 免费视频成人| 亚洲欧美日韩一区二区在线| 久久艹精品视频| 久久国产乱子精品免费女| 久久99精品久久久久久水蜜桃| 国产精品va在线观看视色| 日韩欧美在线中文字幕| 婷婷五月精品中文字幕| 91精品电影| 国产精品日韩专区| 免费在线稳定资源站| 亚洲一区二区欧美日韩| 国产探花在线观看视频| 欧美日韩国产免费观看视频| 欧美亚洲视频一区二区| 日本高清视频免费观看| 亚洲精品一卡二卡| 色18美女社区| 99re久久最新地址获取| 国产精品欧美久久久| 久草视频在线看| 欧美色欧美亚洲高清在线视频| 国产原创剧情av| 欧美色123| 99国产视频在线| 黄色视屏免费在线观看| 在线播放91灌醉迷j高跟美女| 美国黄色特级片| 日本中文字幕一区二区视频| 欧美在线3区| 成人啊v在线| 亚洲色图色老头| 午夜一级黄色片| 中文成人av在线| 天天干天天玩天天操| 91亚洲国产成人久久精品| 国产深夜精品福利| 黄色av免费在线| 日韩一级片网站| 久久久国产精品人人片| 成人爽a毛片一区二区免费| 国产玉足脚交久久欧美| 极品国产人妖chinesets亚洲人妖| 久久免费福利视频| 水莓100在线视频| 色视频一区二区| 国产精品久久久久久成人| 久久精品国产久精国产爱| 黄频视频在线观看| 亚洲2区在线| 97精品伊人久久久大香线蕉| 色天堂在线视频| 色丁香久综合在线久综合在线观看| 中文字幕被公侵犯的漂亮人妻| 日韩av不卡一区二区| 欧美xxxx吸乳| 精品福利一区| 国产精品va在线播放| 麻豆传媒免费在线观看| 精品日韩欧美在线| 五月天婷婷激情| 中文字幕在线观看不卡| 欧美日韩一区二区区| 中日韩男男gay无套| 亚洲7777| av成人男女| 日韩免费中文字幕| av网站免费在线观看| 日韩国产精品亚洲а∨天堂免| www.日韩一区| 一区二区三区四区五区视频在线观看| av无码一区二区三区| 人人精品人人爱| 隔壁人妻偷人bd中字| 国产欧美高清视频在线| 99中文视频在线| 综合在线影院| 欧美精品在线播放| 国产系列在线观看| 精品成人在线观看| 中文字幕在线观看视频一区| 亚洲高清免费观看| 欧美日韩国产一二三区| 99视频超级精品| 日本高清一区二区视频| 国产亚洲亚洲| 久久观看最新视频| a级在线免费观看| 丁香综合av| 国产欧美精品日韩| 国产高清视频色在线www| 最近2019中文字幕在线高清| 亚洲av片一区二区三区| 欧美一区二区黄| 亚洲午夜无码久久久久| 亚洲国产一区二区a毛片| www.99re6| 久久久午夜电影| 中文字幕永久免费| 久久99久久99精品免视看婷婷| 黑人糟蹋人妻hd中文字幕| 欧美日本在线| 在线视频不卡一区二区三区| 三级精品视频| 国产精品免费一区二区三区| 久久人体av| 国产精品18久久久久久首页狼| 成人免费一区二区三区牛牛| 久久精品国产99国产精品澳门 | 国产第一页精品| 久久久久久久一区| 在线精品一区二区三区| 床上的激情91.| 中文av字幕在线观看| 日本中文字幕一区| 日本www高清视频| 国产日韩一区二区三区在线播放| 国产精品无码免费专区午夜| 91成人超碰| 中文字幕av久久| 国产韩国精品一区二区三区| 亚洲午夜高清视频| 久久亚洲国产| 亚洲高清视频一区二区| 欧美精品久久久久久| 秋霞在线观看一区二区三区| 精品在线观看入口| 欧美一区二区在线| blacked蜜桃精品一区| 欧美少妇一区| 国产伦精品一区二区三区千人斩| 欧美日韩无遮挡| 国产欧美日韩精品一区二区免费| 人禽交欧美网站免费| 精品国内自产拍在线观看视频| 青青草国产精品| 精品国产精品久久一区免费式| 蜜桃视频日韩| 国产在视频线精品视频www666| 日本成人三级| 日韩伦理一区| 中国成人在线视频| 永久亚洲成a人片777777| 成年在线观看视频| 精品av久久久久电影| 久久国产亚洲精品无码| 久久综合激情| 日日干夜夜操s8| 国产精品2024| 喷水视频在线观看| 国产亚洲一区二区在线观看| 青青青视频在线免费观看| 亚洲精品一卡二卡| 久久亚洲精品国产| 欧美婷婷六月丁香综合色| 91精品国自产| 欧美大胆一级视频| 青青草在线视频免费观看| 中文字幕亚洲一区二区三区| 成人在线免费看片| 午夜精品在线观看| av在线一区不卡| 92国产精品久久久久首页 | 亚洲一区二区在线观看视频| 国产区在线观看视频| 在线观看亚洲成人| 国产日韩欧美中文字幕| 亚洲第五色综合网| 中国日本在线视频中文字幕| 欧美激情日韩图片| 欧洲亚洲两性| 91精品国产91久久久久青草| 伊人久久大香线蕉无限次| 亚洲一区3d动漫同人无遮挡| 国产精品theporn| 欧美一级黄色片视频| 国产精品综合在线视频| av在线网站观看| 亚洲色图20p| 天天综合网入口| 欧美精品丝袜中出| 日夜干在线视频| 久久亚洲精品一区| 97久久香蕉国产线看观看| 亚洲a在线播放| 亚洲精品中文字幕99999| 大地资源第二页在线观看高清版| 亚洲伊人观看| 中文字幕第六页| 久久久久久久久一| 久久亚洲国产成人精品性色| 欧美日韩精品欧美日韩精品| 四季av日韩精品一区| 久久香蕉国产线看观看网| 国产日韩电影| 国产99视频精品免费视频36| 久久精品国产大片免费观看| 日本www在线播放| 国产精品一级二级三级| 日本午夜精品视频| 欧美色播在线播放| 神马午夜电影一区二区三区在线观看| 精品国产区一区二区三区在线观看 | 日韩美香港a一级毛片| 免费在线成人av电影| 伊人久久大香线蕉av超碰演员| www激情五月| 欧美激情一区二区三区不卡| 黑人一级大毛片| 精品国产露脸精彩对白| av在线官网| 成人免费看吃奶视频网站| 大胆日韩av| 免费黄色福利视频| 99九九99九九九视频精品| 欧美人妻一区二区| 欧美一区二区视频免费观看| 日本在线免费| 国产噜噜噜噜久久久久久久久| 精品毛片免费观看| 国产免费一区二区三区视频| 99这里只有久久精品视频| 久久精品视频日本| 精品欧美乱码久久久久久1区2区| 午夜伦理大片视频在线观看| 91中文字幕在线| 欧美先锋影音| 人妻精品久久久久中文字幕69| 亚洲欧美日韩国产综合| 国产精品久久久久久久一区二区| 日韩小视频在线| 欧美jizz18| 五月天色婷婷综合| 国产自产视频一区二区三区| 日韩成人毛片视频| 欧美喷水一区二区| 超碰在线观看免费| 操一操视频一区| 伊人狠狠色j香婷婷综合| 中文字幕人妻熟女在线| 亚洲国产一区二区在线播放| 少妇荡乳情欲办公室456视频| 97婷婷大伊香蕉精品视频| 尤物tv在线精品| 粉嫩虎白女毛片人体| 国产精品视频一二三| 亚洲字幕av一区二区三区四区| 日韩中文在线中文网三级| 国产剧情一区二区在线观看| 国产 欧美 日韩 一区| av亚洲精华国产精华精华 | 欧美日韩国产免费观看| 欧美做受高潮中文字幕| 欧美日韩国产影院| www.91在线| 亚洲xxxx在线| 在线视频精品| 99精品全国免费观看| 91精品国产手机| 91超碰在线免费| 欧美系列一区| 国产资源精品在线观看| 国产精品二区一区二区aⅴ| 国产婷婷成人久久av免费高清 | 91日本在线视频| 亚洲欧洲一区二区天堂久久| 成人精品999| 欧美一三区三区四区免费在线看| 成人免费网站观看| 亚洲欧洲日韩综合二区| 成人午夜在线视频| 国产三级理论片|