为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用在节点_模块中本地安装的包?

如何使用在节点_模块中本地安装的包?

UYOU 2019-07-13 16:50:46
如何使用在节点_模块中本地安装的包?中如何使用模块的本地版本。node.js..例如,在我的应用程序中,我安装了咖啡脚本:npm install coffee-script这个安装在./node_modules咖啡命令在./node_modules/.bin/coffee..当我在项目的主文件夹中时,有方法运行这个命令吗?我想我在找类似的东西bundle exec在邦德勒。基本上,我想指定一个每个参与项目的人都应该使用的咖啡脚本版本。我知道我可以添加-g在全球范围内安装它的标志,这样咖啡在任何地方都能正常工作,但是如果我想要每个项目都有不同版本的咖啡呢?
查看完整描述

2 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

因为NPM 5.2.0,您可以使用npx [command],比较方便。

5.2.0之前版本的旧答案:

问题在于

./node_modules/.bin

在您的路径中,只有在当前工作目录是项目目录结构的根目录(即项目目录结构的位置)时,它才能工作。node_modules)

与工作目录无关,您可以通过以下方法获得本地安装的二进制文件的路径:

npm bin

执行本地安装的coffee与项目目录层次结构中的位置无关的二进制文件,您可以使用这个bash构造。

PATH=$(npm bin):$PATH coffee

我把这个化名为npm-exec

alias npm-exec='PATH=$(npm bin):$PATH'

所以,现在我可以

npm-exec coffee

运行正确的咖啡副本,无论我身在何处

$ pwd/Users/regular/project1

$ npm-exec which coffee/Users/regular/project1/node_modules/.bin/coffee

$ cd lib/$ npm-exec which coffee/Users/regular/project1/node_modules/.bin/coffee

$ cd ~/project2
$ npm-exec which coffee/Users/regular/project2/node_modules/.bin/coffee


查看完整回答
反对 回复 2019-07-13
  • 2 回答
  • 0 关注
  • 534 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信