在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');
答案 0 :(得分:1)
有一个节点模块允许您执行此操作。
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');
答案 1 :(得分:1)
我做了一些研究,看来使用标准NPM是不可能的。这是功能请求:https://github.com/npm/npm/issues/5499
但是,使用yarn
(来自Facebook的NPM替代品),您可以通过使用yarn add
并为软件包提供alias来立即使用它。
尽管我尚未尝试对全局安装的软件包进行此操作,但我认为它的工作原理相同。