初始化项目

yarn init -y

添加workspaces 支持

修改package.json

{
"name": "second",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"private":true,
"workspaces":["common","server"]
}

创建common && server 模块

  • common
yarn init -y
├── index.js
└── package.json
index.js
module.exports={
name:"dalong-common",
type:"common"
}
  • server 调用common
yarn init -y
├── index.js
└── package.json
package.json
{
"name": "server",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"dependencies": {
"common": "1.0.0"
}
}
index.js
const common =require("common");
console.log(common);

安装模块

yarn install 

效果

代码调用测试

node server
{ name: 'dalong-common', type: 'common' }

lerna 格式支持

  • 项目结构
├── package.json
├── packages
│ ├── common
│ │ ├── index.js
│ │ └── package.json
│ └── server
│ ├── index.js
│ └── package.json
└── yarn.lock
主要是 package.json {
"name": "second",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"private":true,
"workspaces":[
"packages/*"
]
}
以及packages 文件夹,其他地方不变
yarn install && node packages/server

几个问题

  • 包版本的问题
比如我的项目comon 默认是1.0.0 但是如果我server 引用了1.1.0 ,但是因为本地是没有的,
会使用官方仓库的,这个实际上,在使用中还是要确定好版本,同时还是需要私服进行归档
进行历史版本的管理,确定好包的名称,使用私服格式

说明

版本管理本来就是比较复杂的事情,类似yarn 的有lerna 同时又一个概念monorepo,
bable react 就是使用类似的方式进行官方组件的维护的,还是不错的,减少了包的问题
但是也有缺点,就是依赖过大,总的来说yarn 还是比较简单的,lerna 功能比较多,但是
实际上内部团队用的可能没有那么多,同时比较好的地方是三方以及本地依赖统一一个地方,依赖包
不用必须提交代码仓库

参考资料

https://yarnpkg.com/blog/2017/08/02/introducing-workspaces/
https://lernajs.io/
https://github.com/rongfengliang/yarn-workspaces-demo

 
 
 
 

yarn workspaces基本试用的更多相关文章

  1. #w30 2019年大前端技术周刊

    本周是2019年第30周 会议 2019年ArchSummit全球架构师峰会 2019年7月在深圳举行了ArchSummit全球架构师峰会,里面有不少关于大前端的主题可以关注. 从0到1,移动政务应用 ...

  2. DataPipeline丨LinkedIn元数据之旅的最新进展—Data Hub

    作者:Mars Lan, Seyi Adebajo, Shirshanka Das 译者: DataPiepline yaran 作为全球最大的职场社交平台,LinkedIn的数据团队不断致力于扩展其 ...

  3. DataHub——实时数据治理平台

    DataHub 首先,阿里云也有一款名为DataHub的产品,是一个流式处理平台,本文所述DataHub与其无关. 数据治理是大佬们最近谈的一个火热的话题.不管国家层面,还是企业层面现在对这个问题是越 ...

  4. 【记录】如何造一个vite插件(1)

    在看文章前,先做个定位,这不是一篇纯粹的技术性文章,可以把它理解成一个叙述文章,记录我开发插件的过程. 开始前简单的吹个牛 vue2 也写了很多年了,多人合作始终避不开用到别人的组件.关键是有些组件没 ...

  5. 基于yarn1.x的monorepo实践分享

    背景介绍 几天前,晓东船长微信问我,你们团队有没有monorepo的实践,我很遗憾的告诉他没有,但这在我心里播下了一颗探索的种子,刚好最近老总要搞内蒙古的新项目,我和另一个前端兄弟组成双枪敢死队进行保 ...

  6. 开源前端脚本错误监控及跟踪解决项目BadJS试用

    摘要: 试用BadJS. 原文:开源前端脚本错误监控及跟踪解决项目-BadJS 试用 作者:过错 Fundebug经授权转载,版权归原作者所有. BadJS 是 一个web 前端脚本错误监控及跟踪项目 ...

  7. [BigData - Hadoop - YARN] YARN:下一代 Hadoop 计算平台

    Apache Hadoop 是最流行的大数据处理工具之一.它多年来被许多公司成功部署在生产中.尽管 Hadoop 被视为可靠的.可扩展的.富有成本效益的解决方案,但大型开发人员社区仍在不断改进它.最终 ...

  8. purescript 基本试用

    安装环境 安装预编译文件 https://github.com/purescript/purescript/releases 配置环境变量: export PATH=$PATH:/Users/dalo ...

  9. yarn  workspace 开发示例

    此为官方示例: package.json { "private": true, "workspaces": [ "workspace-a", ...

随机推荐

  1. Learning to Rank之RankNet算法简介

    排序一直是信息检索的核心问题之一, Learning to Rank(简称LTR)用机器学习的思想来解决排序问题(关于Learning to Rank的简介请见我的博文Learning to Rank ...

  2. BZOJ2938:[POI2000]病毒(AC自动机)

    Description 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码 ...

  3. Sublime Text3编辑器简介

    Sublime Text3编辑器简介 下载地址 绿色中文版v3.3038下载地址:http://www.cncrk.com/downinfo/60832.html 官方网址(英文安装版)下载地址:ht ...

  4. iptables命令、规则、参数详解

    表    (table)包含4个表:4个表的优先级由高到低:raw-->mangle-->nat-->filterraw---RAW表只使用在PREROUTING链和OUTPUT链上 ...

  5. office 2010 安装时出错 MSXML版本6.10.1129.0

    微软下载网址:https://www.microsoft.com/zh-cn/download/details.aspx?id=6276&751be11f-ede8-5a0c-058c-2ee ...

  6. sqlite3 shell方向键、浏览历史命令不能用的问题

    在sqlite3 shell下,按上下方向键可以浏览历史命令,按左右方向键则可以将光标移动到命令中任意字符位置,从而可以修改错误的语句或误敲的字符.所以方向键是sqlite3 shell下最常用的功能 ...

  7. Bitmap 位图

    转自: http://dongxicheng.org/structure/bitmap/ 1.  概述 位图(bitmap)是一种非常常用的结构,在索引,数据压缩等方面有广泛应用.本文介绍了位图的实现 ...

  8. pickle & cPickle ValueError: unsupported pickle protocol: 3

    pickle and cPickle pickle和cPickle是python对象的转储文件,保存的是python对象 他们分别是python2和python3的对应部分,建议引入的时候采用以下方法 ...

  9. nodejs真的是单线程吗?

    [原文] 一.多线程与单线程 像java.python这个可以具有多线程的语言.多线程同步模式是这样的,将cpu分成几个线程,每个线程同步运行. 而node.js采用单线程异步非阻塞模式,也就是说每一 ...

  10. 基于spring boot admin 做监控的一些问题记录

    问题一 各个健康节点权限问题 解决方式 加入权限模块 <dependency> <groupId>org.springframework.boot</groupId> ...