当前位置: 首页 > 后端技术 > Node.js

使用nvm管理你的Node环境

时间:2023-04-03 22:51:46 Node.js

order当你管理多个项目时,是否遇到过如下提示?语法错误:错误:缺少绑定D:\works\test-product\node_modules\node-sass\vendor\win32-x64-57\binding.nodeNodeSass找不到适合您当前环境的绑定:Windows64-bitwithNode.js8.x找到以下环境的绑定:-Windows64位和Node.js14.x这通常是因为自从运行`npminstall`后您的环境发生了变化。运行`npmrebuildnode-sass`以下载绑定您当前的环境。这是由于执行程序时本地运行版本和node-sass安装版本不一致导致的。大部分有这种情况的朋友应该用nvm吧?没错,管理Node版本最好的工具就是nvm1。nvm安装官方工具官网介绍nvm是一个node.js版本管理器,设计用于用户安装,shell调用。nvm适用于任何符合POSIX的shell(sh、dash、ksh、zsh、bash),尤其是在这些平台上:unix、macOS和windowsWSL如果你适合以上环境,可以分两步安装:直接复制运行以下命令进入终端$curl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh|bash#或$wget-qO-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh|bash上面的命令会下载并运行脚本,然后将nvm工程下载到~/.nvm目录下存放。将以下代码编辑为~/.bash_profile、~/.zshrc、~/.profile或~/.bashrcexportNVM_DIR="$([-z"${XDG_CONFIG_HOME-}"]&&printf%s"${HOME}/.nvm"||printf%s"${XDG_CONFIG_HOME}/nvm")""-s"$NVM_DIR/nvm.sh"]&&\."$NVM_DIR/nvm.sh"#ThisloadsSelectionundernvmWindow如果你想在windows的正常环境下管理你的node版本,你可以安装nvm-windows2。下载地址:https://github.com/coreybutle...代理下载地址:https://ghproxy.com/https://g...下载后双击安装。nvm有两种使用方式:commanddirectoperationforprojectcommanddirectoperationnvmofficialversioncommand#查看所有发布的node版本$nvmls-remote#只查看稳定版本$nvmls-remote--lts#安装node版本$nvminstall14.7.0#or16.3.0,12.22.1,etc#查看本地安装的节点和当前应用版本$nvmls#应用节点版本$nvmuse14.7.0nvm-windowsversion命令#查看所有发布的节点版本$nvmlistavailable#安装节点版本$nvminstall14.7.0#or16.3.0,12.22.1,etc#查看本地安装的节点和当前应用版本$nvmlist#应用节点版本$nvmuse14.7.0用于项目like文章开头遇到的情况。当项目使用的node版本有要求时,有什么办法解决吗?nvm支持读取.nvmrc文件来切换节点版本。这就是答案。具体使用方式是这样的:在项目中创建.nvmrc,将当前版本注入进去。#nvm$node-v>>.nvmrc#nvm-windows#Declare:Windowswithout.exewillmakeanerror$node.exe-v>>.nvmrc#fileresult$cat.nvmrc14.7.0.nvmrc将作为一个重要的项目使用哪个Node版本的基础,记得提交到githistory。在运行项目命令之前切换节点版本。比如vue-cli项目下会有两行,一般用于开发和检索,如:runnpmrunservelocally。{"script":{"serve":"vue-cli-serviceserve","build":"vue-cli-servicebuild"}}执行时直接切换node版本,只需要加两行配置3:{“脚本”:{“服务”:“vue-cli-serviceserve”,“build”:“vue-cli-servicebuild”,+“preserve”:“nvmuse”,+“prebuild”:“nvmuse",}}如果在WindowsPowerShell下执行命令,需要改成如下4:{"script":{"serve":"vue-cli-serviceserve","build":"vue-cli-servicebuild",+"preserve":"nvmuse(Get-Content.nvmrc)",+"prebuild":"nvmuse(Get-Content.nvmrc)",}}nvm-sh/nvm:节点版本Manager-符合POSIX标准的bash脚本,用于管理多个活动的node.js版本(github.com)?coreybutler/nvm-windows:一个node.js版本管理实用程序适用于Windows。具有讽刺意味的是用Go编写的。(github.com)?不适用于.nvmrc·Issue#169·coreybutler/nvm-windows(github.com)?支持.nvmrc·Issue#128·coreybutler/nvm-windows(github.com)?