pinia里面不能用vue-router的内置类型RouteRecordRaw?-灵析社区

皮皮踢

报错信息: 如果没有引用 ".pnpm/@vue+shared@3.3.4/node_modules/@vue/shared",则无法命名 "useUserStore" 的推断类型。这很可能不可移植。需要类型注释。ts(2742) ![](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/dd576c4f16996cf2973b59f13bd763a6.png)![](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/66a0db1972ace72ebb22bc680e30d849.png)

阅读量:24

点赞量:0

问AI
这是一个 pnpm 的 Feature 引起的 Bug。 简单来说就是 pnpm 默认只会把你 package.json 里声明的那些依赖安装到 node_modules 根目录下,这就避免了所谓的“幽灵依赖 ”问题。但有的时候 TS 的类型自动推断却需要这些幽灵依赖参与(比如你这里就是需要 "@vue/shared",可你又没显式安装过它,所以报错)。 目前来说的话解法就是你显式去安装一下这些缺失的依赖。 «"https://github.com/microsoft/TypeScript/issues/42873" (https://link.segmentfault.com/?enc=u83sus2da9B%2FtZfOKfLfMg%3D%3D.qKcbCkrvGrFdCPbyVdc2ld0KqxoQHyKxvbCNxlC25BkYZON5JzFRQD5kjZoTarIpV5CqHfpC%2B7%2BoIBYozGimvQ%3D%3D)"https://github.com/microsoft/TypeScript/issues/47663" (https://link.segmentfault.com/?enc=nHY8FSRI4gPd1SUqlf3vow%3D%3D.g0j0zxFTbdwdSZFFjDfAyO4Uu32u5v0DXuFXilejlDgMRZCr9%2BwGhke%2BVrNbbe5jFZMLhtVLh97Y%2FnLHMMtO1w%3D%3D)»