基于vue的ui组件库开发—— 01

前言

随着重复项目的增多,通用组件在前端开发中越来越重要了,开发者更细分、聚焦于组件层面的开发,然后像搭积木一样完成应用功能。组件库可以统一管理组件,输出文档,能提升组件复用性、避免重复造轮子。

背景

为什么要搭建属于团队自己的组件库?

每个公司或者细化到团队都有属于自己的ui特性,例如(华为习惯用红色,平安习惯用橙色)。我们在利用开源的ui库的时候,免不了需要二次开发。正好团队最近在一些通用的机器人会话相关的产品,需要提供给集团下各个系列公司统一的样式、布局规范以接入,还需要统一扩展基础组件的能力。于是组件库的需求的就这么出来了!目前是以 vue2+webpack 的为基本框架来开发,后期我们将升级到vue3+vite的框架

1. 项目基础架构搭建

刚开始开发组件库,我们肯定是要建起项目的基础架构,既然是vue2 为基本框架,那自然是通过vue-cli 来构建项目了。

// 全局安装@vue/cli
npm install -g @vue/cli

// 创建基础项目,并选择vue2模板
vue create llz-ui

此时停笔思考:基础的vue脚手架搭建完成,接下来我应该干什么?我们的目的是要构建一个组件库,并且这个组件库需要提供给我们自己的前端工程项目引用,并且可以全局生效,此时脑海中大概有了一个思路:通过一个目录文件管理所有的ui组件,然后将这些组件统一提供一个出口,使之可以全局注册到前端项目中。这不就是我们平时引用第三方组件库时候的做法吗?OK,可以先看下我的项目目录结构:

llz-ui
├─ .browserslistrc
├─ .eslintignore
├─ .eslintrc.js
├─ .gitignore
├─ README.md
├─ babel.config.js
├─ components
│  ├─ button
│  │  ├─ button.vue
│  │  ├─ index.js
│  │  └─ index.less
│  ├─ icon
│  │  ├─ fonts
│  │  │  ├─ wbs-icon.svg
│  │  │  ├─ wbs-icon.ttf
│  │  │  ├─ wbs-icon.woff
│  │  │  └─ wbs-icon.woff2
│  │  ├─ icon.vue
│  │  ├─ index.js
│  │  └─ index.less
│  ├─ index.js
│  ├─ index.less
│  ├─ nav-bar
│  │  ├─ index.js
│  │  ├─ index.less
│  │  └─ nav-bar.vue
│  └─ style
│     ├─ base.less
│     ├─ hairline.less
│     ├─ theme.less
│     └─ utils.less
├─ demo
│  ├─ App.vue
│  ├─ assets
│  │  └─ logo.png
│  ├─ main.js
│  └─ modifiyStyle.less
├─ jsconfig.json
├─ package-lock.json
├─ package.json
├─ public
│  ├─ favicon.ico
│  └─ index.html
└─ vue.config.js
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值