为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第14天 Web前端架构师

标签:
Vue.js

课程名称:Web前端架构师
课程章节:12周 通用上传组件开发以及使用
主讲老师:张轩

课程内容

Vue3愉快地入门了,然后架构师这门课也是张轩老师讲的,但是之前走马观花地看了看,学了Vue3+TS仿知乎的课有更深的体会了,温习一下这个上传组件的升级版!
这周的内容有组件上传的基本实现、结合测试和源码分析。
上传组件的需求实现:根据状态切换视图(未传输、正在上传、上传成功、上传失败)、手动上传、上传校验、拖拽上传、预览图片和移除上传。
拖拽上传的实现使用了一个events对象,然后把所有组件的事件监听方法囊括进去,仅需要v-on就可以监听那么多的事件方法,惊呆了。我之前一直没有使用过这种方式…
预览图片可以使用两种API,分别是URL.createObjectURL和FileReader.readAsDataURL,前者使用本地路径bob对象后者生成base64便于操作。

URL.createObjectURL(object)
FileReader.readAsDataURL

const fileReader = new FileReader()
fileReader.readAsDataURL(uploadedFile)
fileReader.addEventListener('load', () => {
    fileObj.url = fileReader.result as string
})

TDD开发是先写测试代码然后,然后写组件,以保证组件符合预期,不过测试模拟的事件有时候会没法拿到对应的推断,可以用到比较hack的方法,比如object.defineProperty
最后讲的源码部分,现在的代码已经有变化了,主要是用了setup指令简洁了许多,基本的构造课程大部分也实现了。

课程收获

温故而知新确有道理,现在拓展了上传组件的写法和缩略图的生成方法,趁热打铁打算参考elementPlus、antd vue和arco自己写一个比较完善的上传组件,fight!
图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消