在Mac上配置Node还是很简单的,但是有一些坑和知识点。本文除了介绍如何配置环境外,还介绍了两个坑:1)brew安装nvm,重启终端后nvm失败2)终端重启后,通过nvm安装node和npm失败,两个知识点:1)nvm和n的区别2)bash_profile、bashrc和zshrc的区别1.配置安装过程1.1安装HomeBrew官网:https://brew.sh/index_zh-cn.htmlHomeBrew是MacOS上的一个包管理器,用来安装系统上未预装的东西。我们用它来安装nvm。安装://打开zsh,输入/usr/bin/ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"PS:也可以用HomeBrew来安装node,不过用nvm控制node版本切换更方便。1.2安装nvm官网:https://github.com/creationix...nvm用于node版本控制,我们使用HomeBrew来安装nvm。brewinstallnvm坑一:brew安装nvm,重启终端后nvm失败,但是用brew安装nvm有个bug,安装时缺少nvm.sh,会导致每次终端nvm命令失效重新启动,所以我们每次都要使用它第二次运行以下命令://将以下代码复制到终端并运行exportNVM_DIR=~/.nvmsource$(brew--prefixnvm)/nvm.shOK,现在nvm命令已经被识别了,但是每次重启终端运行无疑是非常复杂的,所以我们需要在~/.zshrc中进行配置,保证每次重启时系统都能帮我们做一个步骤.在~/.zshrc中添加上面两行即可1.3安装node接下来使用nvm安装node,命令如下:nvmls-remote//查看当前node版本号nvminstallv8.11.3//我选择的是stableversionnode-v//安装完成后可以查看node和npm的版本。npm-v坑2:终端重启后,通过nvm安装的node和npm失效,但是重启终端后,node和npm也失效。到时候不想干了,就是瞎折腾。这是因为nvm默认不绑定node的版本号,需要手动绑定。如果没有重启,node和npm命令仍然有效,那么直接运行下面的命令。如果无效,先用nvmusev8.11.3安装nodenvm//设置默认版本号nvmls//查看是否设置默认成功,成功图片如下//如果不成功,再绑定默认版本号nvm别名defaultv8.11.3至此,节点部署完成。2.相关知识点通过第一部分,我们已经在MacOS上成功部署了node环境。下面是部署过程中可能涉及到的一些小知识点。2.1nvm和nn的区别:npm包全局安装。使用npminstall-gn安装,节点循环依赖。nvm:不依赖node的独立包。nvm相对于n有几个优点:对于全局模块,n没有办法控制全局模块,但是在nvm中,不同版本node的全局模块都存放在各自的版本沙盒中。不同版本之间不会有冲突从理解的角度来说,nvm不依赖node,比较容易理解。您不需要先安装节点。当然,n是可以支持windows的,使用起来并不比nvm复杂。您可以选择其中一个。2.2bash_profile,bashrc和zshrc的区别看教程的时候每次都要在上面三个文件里读写。那么以上三个文件是什么,有什么区别呢?这三个文件用于设置用户的工作环境。它们都是终端启动时默认运行的文件。只是它们略有不同。LoginShell:输入密码进入终端的shell环境称为LoginShell,如ssh远程登录[1]no-LoginShell:一般双击打开终端称为no-LoginShell,但在Mac中,系统将默认为LoginShell。bash_profile:专门用于LoginShell中的bashrc;专用于no-LoginShell中的zshrc:安装oh-my-zsh后,启动时将运行zshrc而不是上述两个文件。另外,它与LoginShell或no-LoginShell无关,无论什么shell都会运行。
