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,输出:

相关推荐
a程序小傲1 小时前
听说前端又死了?
开发语言·前端·mysql·算法·postgresql·深度优先
Yan.love2 小时前
【CSS-布局】终极方案:Flexbox 与 Grid 的“降维打击”
前端·css
请叫我聪明鸭2 小时前
基于 marked.js 的扩展机制,创建一个自定义的块级容器扩展,让内容渲染为<div>标签而非默认的<p>标签
开发语言·前端·javascript·vue.js·ecmascript·marked·marked.js插件
悟能不能悟2 小时前
Gson bean getxxx,怎么才能返回给前端
java·前端
2501_944711432 小时前
前端向架构突围系列 - 工程化(五):企业级脚手架的设计与落地
前端·架构
Apex Predator2 小时前
本地库导入到nexus
java·服务器·前端
趁着年轻吃点苦3 小时前
宝塔面板部署指南
前端
0思必得03 小时前
[Web自动化] Selenium中Select元素操作方法
前端·python·selenium·自动化·html
一叶星殇3 小时前
C# .NET 如何解决跨域(CORS)
开发语言·前端·c#·.net
运筹vivo@3 小时前
攻防世界: catcat-new
前端·web安全·php