对于node 的包管理工具,我一般习惯用 yarn,但是最近使用 yarn 创建前端项目的时候出了一些问题。
yarn create vite vite-project
报错如下:
error when starting dev server:
Error: Failed to resolve vue/compiler-sfc.
@vitejs/plugin-vue requires vue (>=3.2.25) to be present in the dependency tree.
![](http://zhangshiyu.com/zb_users/upload/2023/04/20230404150518168059191834208.png)
我刚开始以为是 vite 的问题,但是发现 npm 和 pnpm 是ok的。
后边才知道是我的 yarn 太古老了。
现在的 Node.js 14.19.0 and 16.9.0+自带了一个命令,corepack.
有了这个 corepack 就不用什么全局安装 npm install yarn -g 这种东西了。
而是直接开启 corepack
# 命令行执行corepack enable
这样你就可以全局使用 yarn 了,但是我发现我的 yarn 版本还是 1.xx,看了 yarn 的官网才知道,现在更新 yarn 的版本需要一些命令,但是用 corepack 可以很方便。
corepack prepare yarn@3.4.1 --activate
去 ![这里](https://github.com/yarnpkg/berry/releases/latest)查看 yarn 的最新版本,然后加在后边
就可以了。
然后建议大家在 pakeage.json 中将管理工具的版本声明一下,因为现在 yarn 1.xx 的版本不是通用的了。
具体方法如下:
![](http://zhangshiyu.com/zb_users/upload/2023/04/20230404150518168059191891031.png)
这样就直接指定了 yarn 的版本。
在 yarn install 的时候,就会自动使用 这个版本。后边的乱码不是必须的。
参考资料:
https://github.com/nodejs/corepack
https://yarnpkg.com/getting-started/install