你观看一个同事编码时候,你会看到一些速记和技巧被应用,有些方式你并不熟悉,那你就被鄙视了,这种事情在我们每一个一生都会发生的。
在这篇文章中,我将介绍一些很有用的npm技巧,还有很多这里并不能全收录,我们只关注那些相关的并且有益于我们每天的工作和开发的技巧。
为了让大家的对npm有一个一致的理解,尤其是我们的新人,让我们快速了解基本的速记和确保没有错过任何细节。
常规: npm install pkg
, 速记: npm i pkg
.
常规: npm i--globalpkg
, 速记: npm i-g pkg
.
常规: npm i--save pkg
, 速记: npm i-S pkg
.
常规: npm i--save-dev pkg
, 速记: npm i-D pkg
.
其他的npm速记阅读npm博客 速记表.
下面开始有趣的内容。
我们都知道 npm init
,用来创建一个新的包。
但是,所有的问题都是匿名的,我们无论如何都会修改它的,那么怎么避免发生呢?
使用 npm init-y
和 npm init-f
回到初始化!
另一个命令就是 npm test
,我们可能每天使用依次或者一天使用好几次。
如果我告诉你可以使用少于40%的字符去完成这个功能?我们经常使用,应该这样。
幸运的是,我们可以使用 npm t
,它就可以胜任
我们开始一个新项目,我们想知道如何开始。我们通常会问自己这样的问题:我们如何运行它?哪些脚本可用?
一个方法是打开package.json文件并检查 scripts
部分。
我们可以做的更好,当然,我们只是运行 npm run
得到一个的所有可用的脚本的列表。
另外的可以选择是安装 ntl
( npm i-g ntl
),然后运行 ntl
在项目文件夹中。它也可以运行脚本,也很方面。
类似于可用的脚本,有时我们会问自己我们的项目中有哪些依赖项。
我们可以再次打开package.json文件和检查,但是我们已经做的更好了。
使用 npm ls--depth0
.
枚举全局安装包,使用 npm ls-g--depth0
我们安装了一个包在我们的项目中,它是一个可执行的,但我们只能运行它通过一个新的脚本。你想知道为什么,或者如何克服它?
首先,让我们了解为什么——当我们在终端中执行命令时,实际发生的是它在PATH环境变量中列出的所有路径中查找一个具有相同名称的可执行文件。这就是他们如何神奇地从任何地方都可以执行。本地安装的软件包登记他们的可执行文件在本地,所以他们不在我们的 PATH
路径中将不会被发现。
当我们运行这些可执行文件通过一个新脚本,它是如何工作的呢?你可能会问?很好的问题!这是因为这种方式运行时,NPM做了一点技巧和增加了一个额外的文件夹到 PATH
, /node_modules/.bin
中。 你可以看到它的运行 npm run env|grep"$PATH"
。你也可以运行只是 npm run env
查看所有可用的环境变量,npm增加了一些更有趣的东西。 /node_modules/.bin
,如果你不知道,正是在本地安装的软件包放置可执行文件的地方。
我们可以运行 ./node_modules/.bin/mocha
在我们的项目中,看看将会发生什么.
很简单, 对吧? 仅仅运行 ./node_modules/.bin/
,无论什么时候你想要运行本地已安装的可执行文件。
你可能看到了 repository
这个入口在package.json文件中,疑问“这有什么好处?”
为了问答这个问题,仅仅运行 npm repo
然后在你的浏览器中查看。
与之类似, npm home
命令进入主页。
如果你想打开你的包的主页npmjs.com,那是一个不错的速记, npm docs
。
您可能熟悉诸如 pretest
之类的脚本,它允许您定义在 test
脚本之前运行的代码。
您可能会惊讶地发现,您可以为每个脚本配置或有或后的脚本,包括您自己的自定义脚本!
对于项目中,你使用NPM作为您的构建工具,有很多脚本,你需要自己总结使用。
你开发一个安装包,你使用semver作为版本管理工具,修改一个新版本。
通过这种方式,你需要手动的修改package.json文件,我们不推荐这样做。
更容易的方式是运行 npm version
通过 major
, minor
或者 patch
这就是这期的所有。
我希望你学到新的东西,发现在这些技巧用,并在你的日常工作流程中使用。最好的就是你对npm有一个新的了解,在你的工作中更好的使用它。
给同事留下深刻印象是很好的,但是不断学习新事物并且更专业更好!
如果你知道更多有用的技巧,请在评论中分享!
往期精选文章 |
---|
使用虚拟dom和JavaScript构建完全响应式的UI框架 |
扩展 Vue 组件 |
使用Three.js制作酷炫无比的无穷隧道特效 |
一个治愈JavaScript疲劳的学习计划 |
全栈工程师技能大全 |
WEB前端性能优化常见方法 |
一小时内搭建一个全栈Web应用框架 |
干货:CSS 专业技巧 |
四步实现React页面过渡动画效果 |
让你分分钟理解 JavaScript 闭包 |
小手一抖,资料全有。长按二维码关注京程一灯,阅读更多技术文章和业界动态。