這7個npm命令將幫助您節省時間

来源:https://www.cnblogs.com/xusx2014/archive/2019/12/04/11986276.html
-Advertisement-
Play Games

作為JavaScript開發人員,NPM是我們一直使用的東西,並且我們的腳本在終端上連續運行。 如果我們可以節省一些時間呢? 1、直接從npm打開文檔 如果我們可以直接使用npm跳轉到軟體包的文檔怎麼辦? 2、打開bug頁面 為了以防萬一,我們想在程式包上提交一個錯誤。 如果有這個包的作者的鏈接,將 ...


作為JavaScript開發人員,NPM是我們一直使用的東西,並且我們的腳本在終端上連續運行。

如果我們可以節省一些時間呢?

1、直接從npm打開文檔

如果我們可以直接使用npm跳轉到軟體包的文檔怎麼辦?

npm home package-name
# 例如:
npm home react  # 將在瀏覽器中打開reactjs.org

2、打開bug頁面

為了以防萬一,我們想在程式包上提交一個錯誤。

npm bugs package-name
# 例如:
npm bugs @agney/playground

如果有這個包的作者的鏈接,將在瀏覽器中打開github問題頁面(或任何問題頁面)。

3、查看包中的所有腳本

如果您不是一開始就寫的話,很難記住腳本名稱。 您可以運行以下命令來查看腳本名稱和正在運行的命令,而不是轉到package.json

npm run

4、跳過所有初始化問題

當您運行npm init時,它將詢問許多問題,您可以一項項的設置,但是大多數時候最好跳過並接受預設設置。

npm init -yes

5、將軟體包更新為最新版本。

NPM CLI的預設命令將僅根據package.json中指定的semver範圍更新軟體包。

npm update

但是,我認為我們不相信軟體包作者或我們想自己來更改semver指標。yarn提供了與互動升級-最新的足夠好的實用程式,但不適用於NPM

要使用NPM克隆此功能,可以使用名為npm-check的軟體包。

npx npm-check --update

npx是Node自帶npm模塊,所以可以直接使用npx命令。萬一不能用,就要手動安裝一下。

$ npm install -g npx

http://www.ruanyifeng.com/blog/2019/02/npx.html

6、在CI上更快地安裝npm

npm install附帶了一些限制(面向用戶的功能),從而使其固有速度變慢。但是我們確實在CI伺服器上需要這些,NPM允許我們使用命令跳過這些。

npm ci

您可以在CI伺服器中將npm install替換為npm ci,如果您有package-lock.json可以做得很好。

例如,持續集成服務 Travis CI 的配置應為:

# .travis.yml
install:
- npm ci
# 保留npm緩存以加快安裝速度
cache:
  directories:
  - "$HOME/.npm"

7、更好的npm發佈

npm publish很好,它可以用semver更新您的軟體包版本,然後將軟體包推送到註冊表中。

但這確實省略了一些重要步驟:構建和測試程式包。 要自動執行這些操作,可以使用預發佈腳本。

"scripts": {
    "prepublish": "npm run build"
}

但是預發佈在每次安裝時執行,因此不是創建變更日誌或運行測試的最佳位置。 在對命名提出了一些批評之後(無論如何這是最困難的事情),NPM引入了一些新的自動掛鉤。

"scripts": {
    "prepublishOnly": "npm test"
}

或者,軟體包np更好。

您可以簡單地運行:

npx np

它將運行所有必要的步驟,包括安裝軟體包,構建和運行測試。 它還將創建標簽併在Github上發佈。

您還使用什麼技巧來節省時間?可以在評論里分享。

原文:https://xushanxiang.com/2019/12/7-npm-commands-to-save-time.html


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 最近項目遇到根據關鍵字匹配度排序,要求關鍵字匹配相等排在第一,關鍵字匹配最左邊排第二,關鍵字匹配最右邊排第三,關鍵字匹配中間排最後;遇到這樣查詢排序場景,用MySQL如何實現?用搜索引擎Elasticsearch如何實現? 方法一:按照上面需求用聯合查詢,可以實現方案,但是當數據量很大時,聯合查詢效 ...
  • 本文探討如何使用 RocketMQ Binder 完成 Spring Cloud 應用消息的訂閱和發佈。 介紹 "RocketMQ" 是一款開源的分散式消息系統,基於高可用分散式集群技術,提供低延時的、高可靠的消息發佈與訂閱服務,廣泛應用於多個領域,包括非同步通信解耦、企業解決方案、金融支付、電信、電 ...
  • 由於程式bug,導致之前很多數據入庫後信息不全,好在有基礎信息表,可以通過基礎信息表更新缺失欄位信息 1、通過 inner join語法實現多關聯更新 update a set a.name = b.name from product_detail a inner join product_base ...
  • 在公司隨便找3台測試機搭個MHA,下麵這個問題折騰了三天,之前沒遇到過,查了OS版本發現一致,可能是不同人弄的OS吧,知道是cpan的問題就是搞不定,鬱悶。。。[root@test247 ~]# masterha_check_repl --conf=/etc/masterha/app1.cnfWed ...
  • 一、分散式資料庫存儲 在前面的章節;GreenPlum資料庫是分散式架構資料庫;表的數據分佈在segment節點。那麼表的數據根據什麼策略來分佈的? GreenPlum資料庫性能依賴於跨數據節點均勻分佈 二、分佈策略 在GreenPlum資料庫在創建表時可以指定分佈策略:哈希分佈(DISTRIBUT ...
  • 假如有這樣一張表: 腳本如下: DROP TABLE IF EXISTS `jl_site_operation`;CREATE TABLE `jl_site_operation` ( `id` int(11) NOT NULL AUTO_INCREMENT, `site_id` int(11) DE ...
  • 文中使用mysql5.7 版本實現多實例,埠為3306和3307。 1、多實例本質在一臺機器上開啟多個不同的mysql服務埠(3306,3307),運行多個mysql服務進程,這些服務進程通過不同的socket監聽不同的服務埠來提供各自的服務; 多個實例共用一套mysql安裝程式,配置文件可以 ...
  • 轉載請標明出處:https://www.cnblogs.com/tangZH/p/11985745.html 有些手機中,給TextView設置lineSpacingExtra後會出現最後一行的文字也出現lineSpacingExtra,不是某些版本才會,這跟機型有關。 可以用下麵這種方法解決: ...
一周排行
    -Advertisement-
    Play Games
  • 基於.NET Framework 4.8 開發的深度學習模型部署測試平臺,提供了YOLO框架的主流系列模型,包括YOLOv8~v9,以及其系列下的Det、Seg、Pose、Obb、Cls等應用場景,同時支持圖像與視頻檢測。模型部署引擎使用的是OpenVINO™、TensorRT、ONNX runti... ...
  • 十年沉澱,重啟開發之路 十年前,我沉浸在開發的海洋中,每日與代碼為伍,與演算法共舞。那時的我,滿懷激情,對技術的追求近乎狂熱。然而,隨著歲月的流逝,生活的忙碌逐漸占據了我的大部分時間,讓我無暇顧及技術的沉澱與積累。 十年間,我經歷了職業生涯的起伏和變遷。從初出茅廬的菜鳥到逐漸嶄露頭角的開發者,我見證了 ...
  • C# 是一種簡單、現代、面向對象和類型安全的編程語言。.NET 是由 Microsoft 創建的開發平臺,平臺包含了語言規範、工具、運行,支持開發各種應用,如Web、移動、桌面等。.NET框架有多個實現,如.NET Framework、.NET Core(及後續的.NET 5+版本),以及社區版本M... ...
  • 前言 本文介紹瞭如何使用三菱提供的MX Component插件實現對三菱PLC軟元件數據的讀寫,記錄了使用電腦模擬,模擬PLC,直至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1. PLC開發編程環境GX Works2,GX Works2下載鏈接 https:// ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • 1、jQuery介紹 jQuery是什麼 jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之後又一個優秀的JavaScript代碼庫(或JavaScript框架)。jQuery設計的宗旨是“write Less,Do More”,即倡導寫更少的代碼,做更多的事情。它封裝 ...
  • 前言 之前的文章把js引擎(aardio封裝庫) 微軟開源的js引擎(ChakraCore))寫好了,這篇文章整點js代碼來測一下bug。測試網站:https://fanyi.youdao.com/index.html#/ 逆向思路 逆向思路可以看有道翻譯js逆向(MD5加密,AES加密)附完整源碼 ...
  • 引言 現代的操作系統(Windows,Linux,Mac OS)等都可以同時打開多個軟體(任務),這些軟體在我們的感知上是同時運行的,例如我們可以一邊瀏覽網頁,一邊聽音樂。而CPU執行代碼同一時間只能執行一條,但即使我們的電腦是單核CPU也可以同時運行多個任務,如下圖所示,這是因為我們的 CPU 的 ...
  • 掌握使用Python進行文本英文統計的基本方法,並瞭解如何進一步優化和擴展這些方法,以應對更複雜的文本分析任務。 ...
  • 背景 Redis多數據源常見的場景: 分區數據處理:當數據量增長時,單個Redis實例可能無法處理所有的數據。通過使用多個Redis數據源,可以將數據分區存儲在不同的實例中,使得數據處理更加高效。 多租戶應用程式:對於多租戶應用程式,每個租戶可以擁有自己的Redis數據源,以確保數據隔離和安全性。 ...