位置: 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使用手册)

  • 调用第三方接口异常什么意思(java调用第三方接口)

    调用第三方接口异常什么意思(java调用第三方接口)

  • airpods充电到99不动了(airpods耳机充电到98不动了)

    airpods充电到99不动了(airpods耳机充电到98不动了)

  • 淘宝发错货不处理怎么办(淘宝发错货不退可以吗)

    淘宝发错货不处理怎么办(淘宝发错货不退可以吗)

  • 苹果6手机进水了怎么办(苹果6手机进水了没声音怎么办)

    苹果6手机进水了怎么办(苹果6手机进水了没声音怎么办)

  • 计算机网络使用范围划分为(计算机网络使用双绞线连接时,常用什么接头)

    计算机网络使用范围划分为(计算机网络使用双绞线连接时,常用什么接头)

  • 手机红外遥控是什么(手机红外遥控是什么功能)

    手机红外遥控是什么(手机红外遥控是什么功能)

  • 苹果接电话可以录音吗(苹果接电话可以解锁吗)

    苹果接电话可以录音吗(苹果接电话可以解锁吗)

  • trt-al00a是什么型号(trt al00a什么型号)

    trt-al00a是什么型号(trt al00a什么型号)

  • 蜜源绑定的淘宝能解除吗(蜜源绑定的淘宝在哪里)

    蜜源绑定的淘宝能解除吗(蜜源绑定的淘宝在哪里)

  • 手机可以设置关机状态吗(手机可以设置关机但是又能上网吗)

    手机可以设置关机状态吗(手机可以设置关机但是又能上网吗)

  • 华为荣耀9x为什么没有耳机(华为荣耀9X为什么前置摄像头随时都是提醒收起摄像头)

    华为荣耀9x为什么没有耳机(华为荣耀9X为什么前置摄像头随时都是提醒收起摄像头)

  • 苹果手表series5和nike区别(苹果手表series5是什么意思)

    苹果手表series5和nike区别(苹果手表series5是什么意思)

  • word的五种对齐方式(word五种对齐方式快捷键)

    word的五种对齐方式(word五种对齐方式快捷键)

  • 手机蓝牙怎么传软件(手机蓝牙怎么传照片到另一个手机)

    手机蓝牙怎么传软件(手机蓝牙怎么传照片到另一个手机)

  • 手机淘宝红包怎么领取(手机淘宝 红包)

    手机淘宝红包怎么领取(手机淘宝 红包)

  • 如何查看电脑显卡内存(如何查看电脑显卡型号)

    如何查看电脑显卡内存(如何查看电脑显卡型号)

  • 华为最近删除的视频删除怎么恢复(华为最近删除的短信)

    华为最近删除的视频删除怎么恢复(华为最近删除的短信)

  • 公众号看到访客记录吗(公众号 访客记录)

    公众号看到访客记录吗(公众号 访客记录)

  • 灵敏度左右晃动怎么调(灵敏度左右晃动还有压枪不稳怎么调压枪稳)

    灵敏度左右晃动怎么调(灵敏度左右晃动还有压枪不稳怎么调压枪稳)

  • 支付宝怎么购买飞机票(支付宝怎么购买香港流量包)

    支付宝怎么购买飞机票(支付宝怎么购买香港流量包)

  • 天猫精灵可以控制哪些家电(天猫精灵可以控制美的空调吗)

    天猫精灵可以控制哪些家电(天猫精灵可以控制美的空调吗)

  • 手机延迟高怎么办 (解决手机延迟)

    手机延迟高怎么办 (解决手机延迟)

  • vivo如何恢复出厂设置(vivo如何恢复出厂系统版本)

    vivo如何恢复出厂设置(vivo如何恢复出厂系统版本)

  • mhotkey.exe是什么进程 有什么作用 mhotkey进程查询(onekey.exe是什么)

    mhotkey.exe是什么进程 有什么作用 mhotkey进程查询(onekey.exe是什么)

  • 【uni-app教程】四、UniAPP 路由配置及页面跳转(uni-app入门到实战)

    【uni-app教程】四、UniAPP 路由配置及页面跳转(uni-app入门到实战)

  • 代开运输发票会不会造成重复征税
  • 货物已到发票未开具
  • 申报个税需要扣除公积金和社保吗
  • 土地增值税计入固定资产清理
  • 领用本企业生产的水泥用于在建工程
  • 税收制度具体内容
  • 投标人认证证书
  • 物业公司收到开发代付物业管理费怎么做账
  • 关于预计负债应付退货款明细科目
  • 购买税控设备,享受何种优惠政策
  • 中央空调可一次开多少度
  • 商业保险税前扣除限额
  • 二手房房产税如何征收
  • 电商一般纳税人如何报税
  • 进口产品需要交税吗
  • w10电脑很卡
  • 计算土地增值税时契税可以扣除吗
  • 私立幼儿园收费归哪个部门管
  • windows10我得电脑
  • 非累积带薪缺勤和累积带薪缺勤的区别
  • 如何做批发
  • 税收滞纳金可以抵税吗
  • php解析url参数
  • 收到工程款怎么做账务处理
  • vue的安装命令
  • php常用的魔术方法有哪些
  • php读取文件
  • php file_get_contents smb
  • 特定纳税人是什么意思
  • 应付国库集中支付结余在什么时候确认
  • php解析json对象
  • react roter
  • spring的配置文件中的内容
  • 关于成本核算的论文题目
  • 公司期货套期保值会计处理方法
  • 营运资金需求量测算表格
  • mysql的union语句
  • python gitpython
  • 销售自己使用过的物品免税吗
  • 微店企业店铺和个人店铺的区别
  • 个体工商户要做账报税吗
  • 普通费用发票不入账会有什么后果吗
  • 企业应付职工薪酬的会计核算毕业设计
  • 水电费没有发票吗
  • 实际已缴纳所得税额怎么填
  • 未交增值税借方表示什么意思
  • 一般纳税人是指哪些人群
  • 应交增值税进项税额转出账务处理
  • 固定资产计提完折旧残值怎么处理
  • 一年内到期的非流动负债是经营性负债吗
  • 专项应付款贷方余额表示
  • 空调维护保养费用谁出
  • 企业对于发出的货物
  • 商业企业包装物包括哪些
  • 史上最简单的皮筋枪
  • win8支持固态硬盘吗
  • 重装xp系统后键盘没反应
  • winxp怎么做系统
  • linux系统中touch
  • ip地址有冲突怎么查看
  • win8.1技巧
  • javaweb技术栈是什么
  • veth pair源码
  • jquery怎么禁用按钮
  • Python HTTP客户端自定义Cookie实现实例
  • jquery.min.js源代码
  • bat批处理执行cmd命令
  • unity的ugui
  • 15个常用的excel函数公式
  • 实现一个完整的主要任务
  • python简明
  • jquery属性操作
  • js 竖线
  • js弹出提示窗口
  • unity loom插件
  • 浅析2种JavaScript继承方式
  • 国家税务局内蒙古税务
  • 安徽地税局电话号码
  • 财政部监制的发票
  • pcie3.0*4接口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设