位置: IT常识 - 正文

用 rollup + gulp 造个轮子,别说还挺香(用pullout造句)

编辑:rootadmin
前戏 我是16年入了前端的坑,17年知道了gulp和rollup这两个玩意儿。由于那时webpack势头很猛,便一直没有正眼瞧过它一眼。 直到20年进了一家小公司,做了很多类似的小项目,相同的代码拷来拷去,出现一个bug一堆项目都要改,实在恶心到我了。 于是不得不开始考虑将一些公共的方法和组件提取出 ... 前戏

推荐整理分享用 rollup + gulp 造个轮子,别说还挺香(用pullout造句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:用roller造句,用role造句,用roll up造句,用rope造句,用roll up造句,用roll造句子,用roll up造句,用rope造句,内容如对您有帮助,希望把文章链接给更多的朋友!

我是16年入了前端的坑,17年知道了gulp和rollup这两个玩意儿。由于那时webpack势头很猛,便一直没有正眼瞧过它一眼。

直到20年进了一家小公司,做了很多类似的小项目,相同的代码拷来拷去,出现一个bug一堆项目都要改,实在恶心到我了。

于是不得不开始考虑将一些公共的方法和组件提取出来,做成一个第三方库来维护。而在库的封装方面,rollup相对于webpack具有一定的优势。

在此,便和大家分享一下如何自己造轮子,封装一个前端库并发布到npm仓库中去。

源码

这是我自己封装的3个库,有兴趣可以看看:

https://github.com/moohng/dan;

用 rollup + gulp 造个轮子,别说还挺香(用pullout造句)

https://github.com/moohng/dui;

https://github.com/moohng/tui;

第一个是工具函数库,后面两个是UI库,目前已全部使用TypeScript重写。dui是基于Vue 3封装的,tui无任何依赖,通过tsx语法实现的。

由于后面没多久就离职了,也就没有封装更多方法和组件进去了,但还是具有一定的学习参考价值,尤其对于新手朋友。

每一个库从目录结构、打包命令、导出方式、ts类型支持、单元测试、自动发布等,几乎所有细节知识都涵盖到了。

实操

浏览百遍,不如实操一遍(文章基于tui来做介绍)。

目录结构

另外,还有lib和dist两个打包输出的目录没有列出来。

从上到下:

.github:GitHub自动打包发布的脚步配置目录;packages:存放tui组件库的源码;src:tui组件库演示demo目录;test:测试相关代码;webpack:暂时忽略,用于测试webpack打包用的;

后面的babel.config.json、gulpfile.esm.js、rollup.config.js、tsconfig.json分别是babel、gulp、rollup、ts的配置文件。

环境配置

tsconfig.json配置如下:

{ "compilerOptions": { "jsx": "preserve", // 支持jsx "module": "esnext", "target": "esnext", "declaration": true, // 生成相应的 .d.ts文件 "declarationDir": "lib", // 生成
本文链接地址:https://www.jiuchutong.com/zhishi/304118.html 转载请保留说明!

上一篇:c语言中函数的两种形式(c语言中函数的实参和形参)

下一篇:安装帝国cms如何配置iis(帝国cms使用手册)

  • 三星watch4怎么关机(三星watch4怎么关闭震动)

    三星watch4怎么关机(三星watch4怎么关闭震动)

  • 苹果手机电量数字显示怎么设置(苹果手机电量数字怎么设置)

    苹果手机电量数字显示怎么设置(苹果手机电量数字怎么设置)

  • iphone13mini电池容量(iphone13mini电池容量多少毫安)

    iphone13mini电池容量(iphone13mini电池容量多少毫安)

  • 华为nova9pro可以插内存卡吗(华为nova9pro可以插几个卡)

    华为nova9pro可以插内存卡吗(华为nova9pro可以插几个卡)

  • 支付宝挪车服务在哪里(支付宝挪车服务怎么关闭)

    支付宝挪车服务在哪里(支付宝挪车服务怎么关闭)

  • 华为m6手写笔怎么连接(华为m6手写笔怎么连接平板)

    华为m6手写笔怎么连接(华为m6手写笔怎么连接平板)

  • iphone8支持反向充电吗(iphone8有没有反向充电)

    iphone8支持反向充电吗(iphone8有没有反向充电)

  • 微信怎么打手机号码(微信怎么打手机上面的电话)

    微信怎么打手机号码(微信怎么打手机上面的电话)

  • oppor17换屏后指纹不能用(oppor17换屏后指纹不能用什么原因)

    oppor17换屏后指纹不能用(oppor17换屏后指纹不能用什么原因)

  • 海尔洗衣机fa故障解决(海尔洗衣机FA故障)

    海尔洗衣机fa故障解决(海尔洗衣机FA故障)

  • doc是网页文件吗(word打开是网页版怎么办)

    doc是网页文件吗(word打开是网页版怎么办)

  • 情侣空间网络繁忙是什么问题(情侣空间显示网络异常)

    情侣空间网络繁忙是什么问题(情侣空间显示网络异常)

  • 表格标题怎么居中(表格标题怎么居中不变)

    表格标题怎么居中(表格标题怎么居中不变)

  • 有什么软件可以把图片上的文字提取出来(有什么软件可以监控对方手机)

    有什么软件可以把图片上的文字提取出来(有什么软件可以监控对方手机)

  • ipad型号a1458是几代(ipad型号a1458是几寸的)

    ipad型号a1458是几代(ipad型号a1458是几寸的)

  • switch续航和普通区别(switch续航的区别)

    switch续航和普通区别(switch续航的区别)

  • flyme7怎么更新(flyme系统更新文件在哪里)

    flyme7怎么更新(flyme系统更新文件在哪里)

  • 退出群聊发的消息还在吗(退出群聊发的消息还能不能看见)

    退出群聊发的消息还在吗(退出群聊发的消息还能不能看见)

  • newtv极光怎么看直播(newtv极光设置在哪里)

    newtv极光怎么看直播(newtv极光设置在哪里)

  • 苹果11容易发热吗(苹果11容易发热怎么回事)

    苹果11容易发热吗(苹果11容易发热怎么回事)

  • xr怎么下载软件

    xr怎么下载软件

  • w10插着网线连不上网(w10插着网线无法连接internet)

    w10插着网线连不上网(w10插着网线无法连接internet)

  • 苹果怎么查找复制记录(苹果怎么查找复制过的内容)

    苹果怎么查找复制记录(苹果怎么查找复制过的内容)

  • 手机微博怎么搜索用户(手机微博怎么搜索用户昵称)

    手机微博怎么搜索用户(手机微博怎么搜索用户昵称)

  • 暴风影音如何加速播放(暴风影音如何加载字幕)

    暴风影音如何加速播放(暴风影音如何加载字幕)

  • 安全的无线连接的秘密_当心无线的弱点(安全的无线连接软件)

    安全的无线连接的秘密_当心无线的弱点(安全的无线连接软件)

  • LangChain与大型语言模型(LLMs)应用基础教程:信息抽取

    LangChain与大型语言模型(LLMs)应用基础教程:信息抽取

  • 固定资产报废进项税额怎么处理
  • 怎么找回丢失的手机号
  • 银行承兑汇票是什么科目
  • 劳务发票可以抵扣多少
  • 房屋租赁账务处理程序
  • 企业上缴税费总额怎么算
  • 财务章备案和不备份区别
  • 报销是否需要发票
  • 非流动资产处置损失属于什么会计科目
  • 个人所得税怎么算公式是什么
  • 货车压线行驶怎么处罚
  • 总分机构移送固定资产是否缴增值税
  • 外出拓展训练活动所花的费用怎么做分录?
  • 收到科技创新奖金怎么做分录
  • 企业如何认定
  • 个人销售货物缴纳增值税吗
  • 关于纳税人取得的发票
  • 公司股票卖出会计处理
  • 个体户上季度未申报能补报吗
  • 个人借款给公司利息多少合法
  • 不动产进项税抵扣规定2016
  • 售后需要品控吗
  • 应收账款负数可以调到哪个科目
  • 去办税大厅清卡需要带什么
  • win10运行红色警戒2卡顿
  • 公司股权转让的印花税谁来承担
  • 其他货币资金期末处理
  • googlechrome谷歌浏览器
  • 清除文件夹exe病毒工具
  • 个人所得税账务处理分录怎么做
  • 工程预付款抵扣是什么意思
  • 什么是产品生产者之间争取最有利的关系
  • 进程process
  • php \t
  • 应收账款包括哪些
  • annaconda安装opencv
  • php reference
  • 外出培训餐费要进差旅费吗
  • react moment
  • 广东省工科赛智能配送
  • mkdir命令怎么用
  • php100 jquery教程
  • 收到待报解预算收入怎么做分录
  • 税务端系统返回错误信息f50006
  • 结转销售成本的方法
  • 预收账款未发货会计分录
  • 织梦论坛
  • sql报数字溢出
  • sql server 18486
  • 现金存银行会有记录吗
  • 如何分析成本费用高
  • 收到社保的退费是怎么回事
  • 投资损失如何入账
  • 应收应付抹零账务处理
  • 固定资产转换为投资性房地产转换日
  • 余额百分比法的会计分录
  • 商场联营扣点的合作方式
  • 法人购买设备投入企业
  • 可变现净值是什么意思
  • 合伙企业是什么组织形式
  • 回购股票注销股票怎么办
  • 个税和社保基数不一致怎么办
  • 如何判断企业处于什么阶段
  • 税前扣除是什么时候开始的
  • 租金收入分摊政策规定
  • 大型商业企业
  • mysql数据备份的方式
  • hyper run
  • xp如何更新
  • win8的应用商店
  • Linux系统中矢量图ai格式怎么打开?
  • linux常用网络工具
  • Win10预览版拆弹
  • windows8c盘满了怎么清理
  • el-menu-item
  • 3ds怎么用3ds格式
  • unity提高渲染画质
  • javascript要怎么学
  • 深圳市税务审批中心电话
  • 如何开具红字发票明细
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设