monorepo和pnpm

js 复制代码
//  a/index.js
export default () => {
  console.log('我是@dlxui/a包')
}
js 复制代码
a/package.json
{
  "name": "@dlxui/a",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "type": "module"
}

现在要在b目录下安装dlxui/a,需要执行以下命令

js 复制代码
pnpm add @dlxui/a --filter @dlxui/b --workspace

`pnpm add @dlxui/a`:这部分表示要安装名为 `@dlxui/a` 的包。
`--filter @dlxui/b`:这个选项用于指定只在 `@dlxui/b` 工作区中安装该包。这意味着 `@dlxui/a` 将只被添加到 `@dlxui/b` 的依赖中,而不会影响其他工作区。
`--workspace`:这个选项指示 `pnpm` 在工作区上下文中执行命令,确保在工作区的依赖关系中进行正确的处理。

这个命令的作用是将 `@dlxui/a` 包添加到 `@dlxui/b` 工作区的依赖中,同时确保在工作区的上下文中进行操作。这在使用 monorepo 结构时非常有用,可以有效管理多个包之间的依赖关系
js 复制代码
b/index.js

import sayHello from '@dlxui/a'

sayHello()
js 复制代码
b/package.json
{
  "name": "@dlxui/b",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "type": "module",
  "dependencies": {
    "@dlxui/a": "workspace:^"
  }
}

在b目录下执行node index.js,输出:

相关推荐
大菜菜4 分钟前
Molecule Framework -EditorService API 详细文档
前端
Anita_Sun6 分钟前
😋 核心原理篇:线程池的 5 大核心组件
前端·node.js
灼华_9 分钟前
Web前端移动端开发常见问题及解决方案(完整版)
前端
_请输入用户名10 分钟前
Vue3 Patch 全过程
前端·vue.js
孟祥_成都11 分钟前
nest.js / hono.js 一起学!字节团队如何配置多环境攻略!
前端·node.js
用户40993225021212 分钟前
Vue3数组语法如何高效处理动态类名的复杂组合与条件判断?
前端·ai编程·trae
山里看瓜12 分钟前
解决 iOS 上 Swiper 滑动图片闪烁问题:原因分析与最有效的修复方式
前端·css·ios
Java水解15 分钟前
前端与 Spring Boot 后端无感 Token 刷新 - 从原理到全栈实践
前端·后端
软件技术NINI38 分钟前
前端怎么学
前端
O***p60440 分钟前
前端体验的下一次革命:从页面导航到“流式体验”的系统化重构
前端·重构