你有很多选择。
如果你想拥有不同版本的 nodeJS,对于 windows NVM-windows 是最好的选择。
但是,如果您正在谈论运行不同的基于 http-request 的程序,最简单的解决方案是简单地在系统上每个项目的不同端口上进行侦听。
例如,如果您使用的是 nodejs http 模块
// project 1
server.listen('8080', (err) => { // Will start up the server on port 8080
console.log(`server is listening on 8080`)
})
// project 2
server.listen('8081', (err) => { // Will start up the server on port 8081
console.log(`server is listening on ${port}`)
})
或者如果您使用的是快速服务器
// project 1
app.listen(3000, function() {
console.log('app listening on port 3000 for project 1 !');
})
// project 2
app.listen(3001, function() {
console.log('app listening on port 3001 for project 2 !');
})
注意:这要求您切换到服务器上的端口80,因为这是任何服务器上请求的默认端口。
如果您想获得更复杂的解决方案,其中这两个应用程序都被沙盒化到各自的环境中,您可以选择Virtual box 或Docker。它们都提供相同的功能,但方式不同。它们都可以为您的应用程序设置一个隔离的环境,这样您的应用程序就不会相互交互。
为了让您对此有一个看法,
假设您的应用程序使用您为项目 1 设置为“Abra-kadabra”的环境变量。现在,如果您在项目 2 中引用该环境变量,您仍然会得到“Abra-kadabra”,而您可能需要第二个项目拥有“嗖嗖”的价值
Virualbox 或 docker 会建立一个独立的系统,您可以在其中使用这些确切的功能