多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] # Volta [Volta](https://volta.sh/) 是一个 JavaScript 工具管理器,它可以让我们轻松地在项目中锁定 node,npm 和 yarn 的版本。你只需在安装完 Volta 后,在项目的根目录中执行 `volta pin` 命令,那么无论您当前使用的 node 或 npm(yarn)版本是什么,volta 都会自动切换为您指定的版本。 因此,除了使用 Docker 和显示在文档中声明 node 和 npm(yarn)的版本之外,您就有了另一个锁定环境的强力工具。 而且相较于 nvm,Volta 还具有一个诱人的特性:当您项目的 CLI 工具与全局 CLI 工具不一致时,Volta 可以做到在项目根目录下自动识别,切换到项目指定的版本,这一切都是由 Volta 默默做到的,开发者不必关心任何事情。 ## 安装 ``` $ brew install volta $ volta help # 帮助 $ volta setup # 为当前用户/ shell 启用 Volta,修复可能的命令不生效 $ volta ls all # 列出所有版本 $ volta ls node # 列出所有已安装的 node 版本 ``` ## 安装软件 `volta use xx` 已经弃用 ``` $ volta install node@13.10 $ volta install pnpm $ volta install git-cz yalc ``` ## 卸载 node 目前只能通过手动的方式: ``` rm -rf ~/.volta/tools/image/node/ ``` > [Unclear how to remove Node.js version · Issue #855 · volta-cli/volta](https://github.com/volta-cli/volta/issues/855) ## 示例 ``` $ cd hello $ volta install node@14.8 ``` 在 hello 项目根目录下执行`volta pin`命令,那么会加入一段 json 到`package.json`中: ``` "volta": { "node": "12.8.0" } ``` 如果不在hello目录下执行`node -v`,node的版本13;但我进入 hello 项目再执行`node -v`,node的版本12。 ## 小结 而 volta 所安装的 node/npm/yarn 的全局命令可以由`~/.volta/bin`下看到,全都指向`volta-shim`执行文件,也就是都由`volta-shim`来判断是否需要切换版本或使用默认版本,这样就比 nvm 方便太多了。 # bunjs [oven-sh/bun](https://github.com/oven-sh/bun) Incredibly fast JavaScript runtime, bundler, transpiler and package manager – all in one # sucrase [alangpierce/sucrase](https://github.com/alangpierce/sucrase) Super-fast alternative to Babel for when you can target modern JS runtimes # Verdaccio 1. 公司的业务代码是不能对外开放的,因此我们有必要搭建一个类似于 http://npmjs.org 这个的一个私有平台来管理公司业务相关的组件及代码。 2. 可以使用 [Verdaccio](https://verdaccio.org/) 在本地创建一个 npm 仓库作为代理,然后尽情体验 monorepo 的种种强大之处。 安装运行 Verdaccio 非常简单,您只需运行: ~~~ npm install --global verdaccio verdaccio ~~~ 即可通过 localhost:4837 访问您的本地代理 npm 仓库,别忘了在您的项目根目录创建`.npmrc`文件,将 npm 仓库地址改写为本地代理地址: ~~~ registry="http://localhost:4873/" ~~~ > [使用 verdaccio 搭建 npm 私有仓库](https://www.cnblogs.com/tugenhua0707/p/9163167.html) # scripty [scripty](https://www.npmjs.com/package/scripty) gulp