monorepo仓库搭建

简介: monorepo仓库搭建记录
  1. 安装pnpm:npm install pnpm -g
  2. pnpm init初始化项目
  3. 创建packages/reactivity和packages/shared文件夹
  4. 创建pnpm-workspace.yaml

    packages:
        - 'packages/*'
  5. 创建.npmrc,编辑内容shamefully-hoist = true;,此举可以暴露安装依赖的所有依赖项目
  6. 搭建开发环境pnpm install typescript minimist esbuild -w -D
  7. 创建reactivity包: cd reactivity , pnpm init
{
    "name": "@vue/reactivity",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "buildOptions": {
        "name": "VueReactivity", // 打包后的名字
        "formats": [ // 打包的格式,以下表示输出三个格式的文件
            "global",
            "cjs",
            "esm-bundler"
        ]
    }
}
  1. 同样的方式常见shared下的包,但shared不需要浏览器可访问,所以formats少一个global属性
  2. shared包创建src目录,创建index.ts文件,export一个方法 isObject
  3. reactivity包下创建src目录,创建index.ts文件import { isObject } from "@vue/shared";发现报错,说没有找到@vue/shared
  4. 在根目录下执行pnpm tsc --init,生程tsconfig.json文件
{
    "compilerOptions": {
    "outDir": "dist", // 输出的目录
    "sourceMap": true, // 输出sourceMap
    "target": "ES2016", // 目标语法
    "module": "esnext", // 模块格式
    "moduleResolution": "node", // 模块解析方式
    "strict": false, // 严格模式
    "resolveJsonModule": true, // 解析json模块
    "esModuleInterop": true, // 允许通过es6语法引入commonjs模块
    "jsx": "preserve", // jsx 不转义
    "lib": ["ESNext","DOM"], // 支持的类库 esnext以及dom
    "baseUrl": ".",
    "paths": {
        "@vue/*": ["packages/*/src"]
        }
    }
}
相关文章
|
4月前
|
Java 开发工具 Maven
创建项目脚手架经验(基于gitee仓库)
创建项目脚手架经验(基于gitee仓库)
103 0
|
11月前
|
关系型数据库 PHP Apache
项目管理工具ShowDoc的部署
项目管理工具ShowDoc的部署
153 0
|
存储 缓存 前端开发
npm私服搭建—verdaccio方案及其最佳实践
如今前端圈已十分繁荣,一个跟得上技术时代脚步的互联网公司必定是前后端分离的(至少在狭义上是分离的),这就导致了前端承受的分工压力会越来越大,很多公司的前端项目变得十分庞杂,因此技术负责人可能会考虑根据业务线进行拆分为几个工程系统,这样又引申出一个问题:这几个系统之间如何共用一套公司内部的组件库呢?
2278 0
|
Kubernetes 关系型数据库 MySQL
制品库 Jfrog Artifactory 搭建私服
JFrog Artifactory 功能最强大的二进制制品仓库。在 Google、Apple、思科、甲骨文、华为、腾讯等众多世界500强公司中都有大规模使用,在二进制软件制品管理领域处于绝对领先地位。与其他服务不同,JJFrog Artifactory 在版本发行上分类较多且杂。
1379 0
制品库 Jfrog Artifactory 搭建私服
|
3月前
|
存储 缓存 资源调度
Monorepo(单体仓库)与MultiRepo(多仓库): Monorepo 单体仓库开发策略与实践指南
Monorepo(单体仓库)与MultiRepo(多仓库): Monorepo 单体仓库开发策略与实践指南
149 0
|
4月前
|
JSON JavaScript 数据格式
使用pnpm搭建monorepo开发环境
使用pnpm搭建monorepo开发环境
203 0
|
9月前
|
Linux Shell 开发工具
【Git】安装和常用命令的使用与讲解及项目搭建和团队开发的出现的问题并且给予解决
【Git】安装和常用命令的使用与讲解及项目搭建和团队开发的出现的问题并且给予解决
63 0
|
缓存 Kubernetes Ubuntu
2022-10-12-k8s搭建本地仓库
2022-10-12-k8s搭建本地仓库
87 0
|
存储 Java Shell
【Java项目】拉取公司GitLab项目的教程
【Java项目】拉取公司GitLab项目的教程
233 0
|
开发工具 git 索引
CocoaPods私有库搭建
如何创建一个私有的Spec Repo和Pod
174 0