这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天
提前说明一下,此部分内容更偏向实践理解,很多概念可能模糊不清,更详细的讲解可以查阅相应的文档,后面课程应该也会涉及到。
做大项目,永远绕不开的就是了解nodejs,虽然有了nextjs框架之类的让我们不需要直接接触nodejs,但简单地看看还是需要的。这里是从一个完全使用的角度来看待和安装相关工具的文章。
Node.js是什么
Run JavaScript Everywhere. (nodejs.dev)
是这个
它是个基于Chrome V8引擎的javascipt运行时环境,使得在服务端能够使用javascript。就像官网描述的,有了它可以在任何地方使用js写东西,一份代码可以支持更多环境。总而言之,得用上它……
nvm是什么
nvm文档手册 - nvm是一个nodejs的版本管理工具 (uihtm.com)
它是一个node版本管理工具,用相当简单的命令来控制node版本,相当简便。node虽然强大,但它经常会进行更新,这导致很多奇奇怪怪的版本问题出现,很多时候报错也不知道是咋回事。
npm、pnpm是什么
An introduction to the NPM package manager (nodejs.dev)
npm是个包管理工具,能够下载并管理大量外部的包。打个比方,农民伯伯们各家都种了不同的蔬菜什么的,互相都需要交换来做饭,但这样很麻烦。有了农贸市场后这个问题就好多了,大家可以互相购买各家蔬菜。nodejs就是这样搞的,node的用户们开发了很多好用的小工具,统一交给node管理,使用npm来下载安装别的工具或发布自己的工具。
pnpm是个更好的包管理工具,用法直接替换npm。通过对node_modules的设计使需要维护的文件更少,这样对于大型项目尤其是使用了monorepo的仓库管理起来运行速度会很快。
安装与使用
由于某种原因,国内下载速度会很慢,但可以将镜像源改成国内源来加快速度(科学上网当作没看见就好),由于使用的命名行工具可能有很多,这里给出使用zsh的例子,其它命令行也可以进行参考
vim ~/.zshrc
export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs
source ~/.zshrc
// 安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | zsh
source ~/.zshrc
// 安装nodejs
nvm install 版本号
nvm use 版本号
// 切换到淘宝镜像源
npm --registry https://registry.npmmirror.com/ install -g nrm
nrm use taobao
// 安装pnpm
npm install -g pnpm@版本号
// 测试pnpm是否安装成功
pnpm -v
nvm安装过程网上教程也很多,此处仅供参考。总而言之,下好nvm剩下就没什么事了。