Giter Club home page Giter Club logo

butter-fly's Introduction

开始

start

安装依赖

yarn install -W

本地启动站点

yarn dev

预览站点

yarn preview:site

开发

创建组件工作区

yarn create

增加本地或者远程package做为当前项目packages里面的依赖

lerna add module-1 --scope=module-2 // 将module-1作为module2的依赖

运行lerna publish如果中途有包发布失败,再运行lerna publish的时候,因为Tag已经打上去了,所以不会再重新发布包到NPM 解决办法:

  1. 运行lerna publish from-git,会把当前标签中涉及的NPM包再发布一次,PS:不会再更新package.json,只是执行npm publish
  2. 运行lerna publish from-package,会把当前所有本地包中的package.json和远端NPM比对,如果是NPM上不存在的包版本,都执行一次npm publish

构建相关

  • 项目根目录执行build:all命令,需要触发packages中的业务包自己执行build √

  • 业务包自行build出dist产物,publish发布此lib √

  • 组件构建

  • utils构建

  • ts集成

  • Qs

  1. 构建时排除组件依赖?
  2. 组件库发版后,业务端项目yarn install也无法获取到最新的包,需要yarn upgrade更新
  3. 发布前需要判断是否有dist文件夹
  4. 创建组件工作区时,组件的utils依赖包如何引入? lerna add ? template模板写入?

发布相关

  • npm login √ 开发者可能使用了淘宝镜像源,无法登录npm
  1. 使用 > npm login --registry https://registry.npmjs.org
  2. 切换淘宝镜像为npm官方 npm config set registry https://registry.npmjs.org
  3. 切换回淘宝镜像 npm config set registry https://registry.npm.taobao.org
  • lerna publish √ 检测改动过的包,依次发布 修改一个包,如果其他包依赖这个包,则会自动检测并发布

  • 只发布dist文件夹下的内容,package.json通过lerna prepublish钩子打包时动态创建

  • lerna publish --yes 跳过“您确定要发布上述更改吗?”

模板策略

新建业务组件时,需要通过命令行执行自动根据template模板创建多个文件 (package.json index.ts ...) TODO

CHANGELOG

  • 目前依赖lerna自动生成CHANGELOG.md,后续引入git commit-msg规范来生成

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.