pnpm: 使用指南

pnpm 常用命令使用笔记
更新于: 2024-04-22 23:38:22

cheatsheet

功能代码
升级 pnpm
pnpm add -g pnpm
全局 link
pnpm link --global
删除 unlink(这个是有bug的)
pnpm unlink --global
获取配置
pnpm config get

问题

在使用过程中遇到的问题。

  • pnpm 安装的包,存在 symbol link 依赖的情况, tsconfig.json 无法找到对应的 types
    • 例如: @jswork/next-admin-kits 这个包,有很多 deps
  • pnpm unlink: 其实是无法 unlink 的

证明 pnpm unlink 无效

时间: 2024年03月13 08时50分21秒

时间段事件
之前
@jswork/generator-scrapy global是存在的
执行命令
继续存在
mantine
Error message:

@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app.

The error above occurs in the following cases:

You are do not have MantineProvider in your app at all
You are rendering Mantine components outside of MantineProvider context
You have different versions of @mantine/* packages in your application. For example, you have @mantine/core@7.0.0 and @mantine/dates@7.1.0 installed.
There was an issue during packages installation. Usually this happens with pnpm.
Your app has multiple instances of @mantine/core package in the bundle. This may happen if your project is a monorepo and you have multiple node_modules folders.

手动 unlink

下图是为什么存在的原因。

cd /Users/a7/Library/pnpm/global/5
# 第2步: 删除这里面的对应内容
vim package.json
# 第3步: 删除 node_modules 对应的 link
cd node_modules
rm -rf "@jswork/generator-scrapy"
第一步: 删除 @jswork/generator-scrapy
第2步:删除软链接
没有 global 里的数据了

 

参考