npm:安装和使用不同版本的包

5
有没有一种方法可以安装并且使用不同的npm包版本? 安装是可以的:
npm install -g packagename@2.8
npm install -g packagename@3.1
npm install -g packagename@4.0

我可以安装npm install -g web3@0.20.7并检查npm view web3 versions它们。但是我怎样在*.js脚本中使用它们呢?类似这样:

require('packagename@2.8');
require('packagename@3.1');
require('packagename@4.0'); 
2个回答

2
我进行了一些研究,似乎标准的NPM无法实现此功能。以下是该功能的请求:https://github.com/npm/npm/issues/5499
然而,使用Facebook的NPM替代品yarn可以通过使用yarn add并为包指定别名来轻松实现此功能。
但我尚未尝试全局安装的软件包是否也适用于此方法,我认为其原理相同。

2
有一个 Node 模块可以让你完成这个任务。
npm-install-version

安装方法: npm install npm-install-version --save-dev
var niv = require('npm-install-version');

niv.install('packagenameolder@1.0.0');
niv.install('packagenamenewer@1.0.1');

var package_old = niv.require('packagenameolder@1.0.0');
var package_new = niv.require('packagenamenewer@1.0.1');

谢谢,这看起来很有用,但最后一次更新是两年前了。现在还适用吗?并且与新的node/npm版本兼容吗? - sunwarr10r
我不确定它是否与最新的npm版本兼容。如果你想的话,可以选择yarn。 - Sagar Rana Magar
例如==> yarn add alias-for-package@npm:packagename@version - Sagar Rana Magar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接