作为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

这7个npm命令将帮助您节省时间的更多相关文章

  1. [转] npm命令概述

    PS:问题,nvm找不到正确的下载server NVM_NODEJS_ORG_MIRROR=http://nodejs.org/dist nvm ls-remote NVM_NODEJS_ORG_MI ...

  2. 安装nodejs 后运行 npm 命令无响应处理方法

    安装和卸载过nodejs, 也编辑过 C:\Users\{账户}\下的.npmrc文件. 再全新安装nodejs ,运行npm 命令,无响应. 处理方法,删除C:\Users\{账户}\下的.npmr ...

  3. 使用npm命令,而不用cnpm命令,也可以得到同样的体验

    以前大家都知道使用cnpm命令来替代npm,可以大大提升下载各种包的速度.例如: npm install -g cnpm --registry=https://registry.npm.taobao. ...

  4. npm 命令

    npm instal moduleName [-g]  :安装模块,有 -g 或 --global 是全局安装 npm install -g cnpm --registry=https://regis ...

  5. react系列笔记1 用npx npm命令创建react app

    react系列笔记1 用npx npm命令创建react app create-react-app my-app是开始构建新的 React 单页应用程序的最佳方式.它已经为你设置好了开发环境,以便您可 ...

  6. Win7下npm命令Error: ENOENT问题解决

    Win7下在执行npm命令,比如npm list时出现下面错误:

  7. node.js的npm命令常见错误及解决方案

    使用npm命令进行模块安装的时候场出现各种错误,本文总结我所遇到的各种错误,并提供解决方案.(大部分内容为网上收集) 首先使用淘宝 NPM 镜像 大家都知道国内直接使用 npm 的官方镜像是非常慢的, ...

  8. nodejs安装遇到npm命令无法使用问题

    解决方法: 在用户文件夹中建立npm文件夹就可以使用了. 再使用npm命令就可以了.

  9. 9.使用 npm 命令安装模块

    转自:http://www.runoob.com/nodejs/nodejs-tutorial.html npm 安装 Node.js 模块语法格式如下: $ npm install <Modu ...

随机推荐

  1. 华为参与《基于5G技术的医院网络建设标准》的制定

    [摘要] 5G 千兆网承载五地远程会诊,现场完成三例复杂性疑难重症远程病例讨论 [中国,北京,2019年9月4日] 金秋之际,在国家卫生健康委指导下,由中日友好医院•国家远程医疗与互联网医学中心•国家 ...

  2. layer ui 多选下拉取值(全)

    https://maplemei.gitee.io/xm-select/#/basic/create   layer ui

  3. pip-get.py安装问题

    问题: 安装完成和配置环境之后:输入一个测试命令:pip help 出现下面这个问题. Fatal error in launcher: Unable to create process using ...

  4. DRF Django REST framework 之 认证组件(五)

    引言 很久很久以前,Web站点只是作为浏览服务器资源(数据)和其他资源的工具,甚少有什么用户交互之类的烦人的事情需要处理,所以,Web站点的开发这根本不关心什么人在什么时候访问了什么资源,不需要记录任 ...

  5. MySQL面试总结

    MySQL面试总结 # MySQL的存储引擎 `MyISAM`(默认表类型):非事务的存储引擎,基于传统的`ISAM`(有索引的顺序访问方法)类型,是存储记录和文件的标准方法,不是事务安全,不支持外键 ...

  6. margin重叠与穿透问题

    margin重叠是指两个同级元素之间.margin穿透指的是,子元素margin超出父元素而未被父元素包含的现象. 出现margin重叠的原因: 同一个BFC里面两个块级元素会出现margin折叠. ...

  7. Lamada表达式小技巧介绍

    函数式编程 @FunctionalInterface interface Lf{ void dispaly(); } @FunctionalInterface为显示定义函数时编程接口,不符合函数式编程 ...

  8. HDFS的架构和设计要点

    HDFS的架构和设计要点 转 大数据之路 发布于 2012/10/11 23:00 字数 4487 阅读 495 收藏 1 点赞 0 评论 0 撸了今年阿里.头条和美团的面试,我有一个重要发现.... ...

  9. python爬虫--代理.让你的ip在坚挺一会!!

    代理 代理简述 代理服务器:实现请求转发,从而可以实现更换请求的ip地址 在requests中如何将请求的ip进行更换 代理的匿名度: 透明:服务器知道你使用了代理并且知道你的真实ip 匿名:服务器知 ...

  10. 《Java基础知识》Java类的定义及其实例化

    类必须先定义才能使用.类是创建对象的模板,创建对象也叫类的实例化. 下面通过一个简单的例子来理解Java中类的定义: public class Dog { String name; int age; ...