如果你也想写个完整的 Vue 组件项目
1.一个完整的组件项目需要什么?
必要的:
- 组件构建方式 ( webpack / rollup 之类 ),并提供至少一个主流的输出格式 (ESModule)
- Demo 及 Demo 源码
- 文档,可以是 docsify之类的生成的页面,懒点就内嵌在 README 里了
其实上面的除了文档都比较容易做到,除了可能会在构建上踩坑外。那么做到了这些可以上线了吗?是的。不过看一些优秀的库其实还可以做更多的,例如下面的这些:
有就更好了:
- 一个清晰地
README.md - 提供多种构建方式
es/cjs/umd等多种格式的包 - 一个不丑的
Logo - 组件
截图(没 *8 说个图),有具体交互的最好还能是动图 package.json不要有多余的 dependencies,尽量都在peerDependencies和devDependencies里- 在 Readme 里几句话介绍清楚组件的功能
对的,以上几条说起来很容易,就像写公司内部系统时一样,想要什么什么交互的想法很美好,但是身体力行总力不从心
时间很宝贵的,能用就行了嘛,要做好谁不会,我忙...
好了,写这篇文章的目的来了
2.那么,有没有...
有没有这样一个模板可以直接拿来用,我只要关心怎么写组件就行了呢,那是当然啦!
vue-component-boilerplate 就是这样一个致力于让广大人民群众简单点,写组件项目更简单 的点的仓库,内含:
- 组件、文档、demo 全方位一体,开箱即用
- 优美的
Readme,结构清晰实用!内联折叠格式的 API 文档 - Vue 组件支持多种打包方式,采用 Bili 构建,基于 rollup,输出
es/cjs/umd三种格式 - Demo 采用 poi 打包
上个图
3.使用方法
# 克隆项目
git clone https://github.com/waynecz/vue-component-boilerplate.git example-name
cd example-name
# 删除原来的 git 信息
rm -rf .git
# git 到你自己的仓库
git init && git remote add origin {your repo address}
# 安装依赖
yarn
将
package.json内的一些必要信息替换成你自己的开始写组件吧!!
# 开发
npm run dev # 组件打包
npm run build # 打包 demo
npm run build:demo
4.发布组件
你都开发完后,需要发布组件了,这里贴个简单的 npm 发布教程
如果你也想写个完整的 Vue 组件项目的更多相关文章
- 写一个vue组件
写一个vue组件 我下面写的是以.vue结尾的单文件组件的写法,是基于webpack构建的项目.如果还不知道怎么用webpack构建一个vue的工程的,可以移步到vue-cli. 一个完整的vue组件 ...
- 如何写好一个vue组件,老夫的一年经验全在这了【转】 v-bind="$attrs" 和 v-on="$listeners"
如何写好一个vue组件,老夫的一年经验全在这了 一个适用性良好的组件,一种是可配置项很多,另一种就是容易覆写,从而扩展功能 Vue 组件的 API 来自三部分——prop.事件和插槽: prop 允许 ...
- Vue组件的三种调用方式
最近在写fj-service-system的时候,遇到了一些问题.那就是我有些组件,比如Dialog.Message这样的组件,是引入三方组件库,比如element-ui这样的,还是自己实现一个?虽然 ...
- vue 组件发布记录
好久没做独立的 vue 组件了,最近突然想把一个常用的 vue 组件打成一个 npm 包,方便使用.好久不用,发现已经忘记环境怎么搭建.翻看以前的组件,才慢慢回想起来,中间还出现些错误.在这记录下开发 ...
- 前端开发:如何写一手漂亮的 Vue
前几日听到一句生猛与激励并存,可怕与尴尬同在,最无奈也无解的话:"90后,你的中年危机已经杀到".这令我很受触动.显然,这有些夸张了,但就目前这日复一日的庸碌下去,眨眼的功夫,那情 ...
- 你也可以写个服务器 - C# Socket学习2
前言 这里说的服务器是Web服务器,是类似IIS.Tomcat之类的,用来响应浏览器请求的服务. Socket模拟浏览器的Url Get请求 首先浏览器的请求是HTTP协议.我们上一篇说过,HTTP是 ...
- 你也可以写个聊天程序 - C# Socket学习1
原文:你也可以写个聊天程序 - C# Socket学习1 简述 我们做软件工作的虽然每天都离不开网络,可网络协议细节却不是每个人都会接触和深入了解.我今天就来和大家一起学习下Socket,并写一个简单 ...
- vue-class-component 以class的模式写vue组件
vue英文官网推荐了一个叫vue-class-component的包,可以以class的模式写vue组件.vue-class-component(以下简称Component)带来了很多便利: 1.me ...
- java nio 写一个完整的http服务器 支持文件上传 chunk传输 gzip 压缩 使用过程 和servlet差不多
java nio 写一个完整的http服务器 支持文件上传 chunk传输 gzip 压缩 也仿照着 netty处理了NIO的空轮询BUG 本项目并不复杂 代码不多 ...
随机推荐
- 关闭win7/Server 2008非正常关机启动自动修复功能
命令提示符下输入 bcdedit /set {default} bootstatuspolicy ignoreallfailures bcdedit /set {current} recoveryen ...
- React & `event.persist()`
React & event.persist() event.persist() https://reactjs.org/docs/events.html#event-pooling Tabs ...
- 第43天:事件对象event
一.事件对象事件:onmouseover. onmouseout. onclickevent //事件的对象 兼容写法:var event = event || window.event; event ...
- AC自动机裸题
HDU 2222 Keywords Search 模板题.对模式串建立AC自动机然后在trie树上找一遍目标串即可. # include <cstdio> # include <cs ...
- BZOJ2875 & 洛谷2044:[NOI2012]随机数生成器——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=2875 https://www.luogu.org/problemnew/show/P2044 栋栋 ...
- BZOJ2298:[HAOI2011]problem a——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=2298 https://www.luogu.org/problemnew/show/P2519 一次 ...
- BZOJ2809:[Apio2012]dispatching——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=2809 题面复制于:https://www.luogu.org/problemnew/show/155 ...
- 洛谷2219:[HAOI2007]修筑绿化带——题解
https://www.luogu.org/problemnew/show/P2219#sub 为了增添公园的景致,现在需要在公园中修筑一个花坛,同时在画坛四周修建一片绿化带,让花坛被绿化带围起来. ...
- 模板:数论 & 数论函数 & 莫比乌斯反演
作为神秘奖励--?也是为了方便背. 所有的除法都是向下取整. 数论函数: \((f*g)(n)=\sum_{d|n}f(d)g(\frac{n}{d})\) \((Id*\mu)(n)=\sum_{d ...
- IE6“无法打开站点,已终止操作”提示的解决
今天遇到一个问题,网站在IE 6下面打开会提示:Internet Explorer无法打开站点XXX.已终止操作. 先介绍一下网上常见的解决方法. 因为在页面还没有ready的时候就调用了htmlOb ...