网站搜索
所以我刚刚使用 rush(pnpm)自助搭建了一个 monorepo。
我有一个名为 web-commons 的库,它有依赖项 fastify 等。
我有一个名为my-app的后台应用程序。
我想在 my-app 中使用某些 fastify 类型和模块,但我无法导入它。
如何让 web-commons 的依赖被转递地包含在 my-app 的依赖中?
我知道这里问题的一部分是 pnpm 使用符号链接,而我喜欢它,这样更有意义。
但是我不想在我在单仓库中的每个后端应用程序中声明相同的依赖,而且还会有更多……所以……有办法吗?
阅读更多 →我有一个主要使用 TypeScript 代码的 monorepo,使用 pnpm 管理,并且我们有很多工作区内的包依赖(例如用于库包)。这些包是这个工作区私有的,从不单独发布。我们通常这样定义包:
{ "name": "my-library", "license": "UNLICENSED", "private": true, "main": "dist/index.js", "types": "dist/index.d.ts", "files": ["dist"] }这个问题在于当你更改库中的某些内容时。有点烦人的是,IDE在库重建之前不会看到这些更改。因此,我正在考虑是否我们应该让包直接公开 TypeScript 源代码:
{ "na 阅读更多 →我有一个项目,具有以下文件夹结构,它是一个 TypeScript monorepo,包含两个应用程序(client 和 api)以及一个共享库(shared),前端和后端都依赖于这个共享库。我想将这个项目容器化。
my-monorepo/ |-- api/ | |-- src/ | |-- package.json | |-- tsconfig.json | | |-- client/ | |-- src/ | |-- package.json | |-- tsconfig.json | | |-- shared/ | |-- src/ | |-- package.json | |-- tsconfig.json | |-- package.json |-- pnpm-lock.yaml |-- pnpm-workspace.yaml |-- tsconfig.base.json我尝试在所有工作区放置 Dockerfile 并使用 docker-compose 构建所有容器
阅读更多 →
我正在尝试从 yarn 迁移到 pnpm,但遇到了一些问题,我不确定该如何处理。我还没有尝试调整提升(hoisting)相关的设置(如果可能的话,我更愿意不调整),但我正在努力理解为什么这会给我带来问题。
我有一个小型实用函数,在使用 yarn 时运行良好:
import { makeStyles } from '@material-ui/core'; export const useAlertConfigurationNameStyles = makeStyles((theme) => ({ name: { fon 阅读更多 →我们的项目使用 pnpm + workspace + TypeScript,遵循 monorepo 标准。克隆仓库后,我们运行 pnpm install 来安装依赖并相互链接本地包。但每个包中的代码仍然以源代码模式保存在 .ts 文件中。如何在第一次使用 pnpm install 时触发每个包自动运行 pnpm run build,以便在包内生成 dist 文件夹。
在每个 package.json 中添加 prepare 脚本,例如 prepare: pnpm run build。它将在本地执行 pnpm install 时触发,而无需任何参数。
阅读更多 →
我创建了一个 PNPM 单体仓库,其中包含两个 NestJS 应用(apps/api 和 apps/backend;两者完全相同)以及一个 Prisma 数据库包(packages/database)。当我使用 start:dev 运行 api 时,我收到以下错误:
(node:69498) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension. 阅读更多 →
我有一个 Angular 应用程序,它构建得很好。这个应用程序唯一的特殊之处是它在 angular.json 中设置了 preserveSymlinks: true,并且一个本地库通过 package.json 依赖项中的 link: 协议安装用于开发。
一切都正常工作,直到我按照文档中的指南添加 SSR 并执行
ng add @angular/ssr 阅读更多 →我使用 pnpm workspaces 构建了一个单仓库,但在让它运行时遇到了麻烦。它在前端使用 TypeScript 和 Vite,在后端微服务使用 Rollup。
这是设置:
package.json <== all dependencies reside here tsconfig.json pnpm-workspaces.yaml - commonlib/ package.json, tsconfig.json, rollup.config.js src/ ...interfaces, types etc--- - serverlib/ package.json, tsconfig.json, rollup.config.js src/ ...modules for common server/microservice funtionality--- - weblib/ package.json, tsc 阅读更多 →
在一个 monorepo 中使用 PNPM 和 Vite 会导致以下问题,我完全不知道这种 [email protected]_@[email protected] 是什么怪东西,可能是 PNPM 的某种奇怪行为。有没有办法禁用对这些库的检查?
9:02:46 PM [vite] Internal server error: Failed to parse source for import analysis because the content conta 阅读更多 →
我有一个包,它已经在 NPM 上发布。在这个包中,我将同一个包用作它的一个依赖项,https://github.com/tal-rofe/cz-vinyl
所以正如你所看到的,包名是 cz-vinyl,最新版本是 2.5.0。最重要的,我的 package.json 文件包含:"cz-vinyl": "2.5.0",所以我将该包作为依赖使用。
在这个包中,我在它的 package.json 文件中导出了一些 TypeScript 类型:
"exports": { ".": { "types": "./dist/config.d.ts", "require": 阅读更多 →