博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
yarn workspaces基本试用
阅读量:7033 次
发布时间:2019-06-28

本文共 1291 字,大约阅读时间需要 4 分钟。

初始化项目

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.jsonindex.jsmodule.exports={name:"dalong-common",type:"common"}
  • server 调用common
yarn init -y├── index.js└── package.jsonpackage.json{"name": "server","version": "1.0.0","main": "index.js","license": "MIT","dependencies": {"common": "1.0.0"}}index.jsconst 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 功能比较多,但是实际上内部团队用的可能没有那么多,同时比较好的地方是三方以及本地依赖统一一个地方,依赖包不用必须提交代码仓库

参考资料

 
 
 
 

转载地址:http://kiyal.baihongyu.com/

你可能感兴趣的文章
753个大奖邀请各位新老博主入驻云栖,请技术人员广而告之
查看>>
apache域名重定向rewrite
查看>>
LNMP架构介绍,php安装
查看>>
Spring Boot教程(三十一)创建含有多module的springboot工程
查看>>
maven打包成可运行jar包遇见的坑
查看>>
《活着》读后感4500字
查看>>
JDK8新特性
查看>>
Nginx访问日志、日志切割、静态文件不记录日志和过期时间
查看>>
Zookeeper的投票机制及分布式事务锁原理
查看>>
学了这么久Python,大家知道它的起源吗?
查看>>
Java通过几种经典的算法来实现数组排序
查看>>
PHP ++true true++ 布尔值的先增后增问题
查看>>
关于composer常用到的命令
查看>>
从今天起让我们忘记Java中的get/set方法吧!
查看>>
java框架学习日志-3
查看>>
Oracle学习日志-6(聚合查询)
查看>>
程序员笔记|循序渐进解读Oracle AWR性能分析报告
查看>>
UniDAC使用教程(一):连接到数据库
查看>>
h3c s5820交换机_简单配置
查看>>
Nagios开发邮件报警程序
查看>>