当前位置:首页 > 科技  > 软件

说实话,第一次对 Vue 有点小失望

来源: 责编: 时间:2024-07-09 18:16:44 287观看
导读在最近的 Vue Conf 2024 上,Vue 官方推荐了一款 Vue 的工具 Vine-Vue,在这里我先 respect 一下 Vue 团队对于开发者的鼓励~但是我想对 Vue 官方团队说:你真的觉得有必要推荐这个库吗?Vue-Vine图片先来说说这个库的作用,这

在最近的 Vue Conf 2024 上,Vue 官方推荐了一款 Vue 的工具 Vine-Vue,在这里我先 respect 一下 Vue 团队对于开发者的鼓励~但是我想对 Vue 官方团队说:你真的觉得有必要推荐这个库吗?nvG28资讯网——每日最新资讯28at.com

Vue-Vine

图片图片nvG28资讯网——每日最新资讯28at.com

先来说说这个库的作用,这个库的作用就是:让 Vue 组件能通过函数式来定义。nvG28资讯网——每日最新资讯28at.com

举个例子,我们在平时写一个组件的时候,会通过模板的方式去定义。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

但是在使用了 Vue-Vine这个库之后,可以使用函数式的方式去定义。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

翻看了一下Vue-Vine的官方文档,总结出Vue-Vine这个库的初衷是:nvG28资讯网——每日最新资讯28at.com

  • 想要做到像 React JSX 那样的组件定义方式
  • 可以在同个文件里定义多个组件
  • 使得逻辑更加聚合,提高开发效率

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

但是我感觉现阶段 Vue 生态就具备这样的能力了,且已经经过一段时间的打磨了呀!nvG28资讯网——每日最新资讯28at.com

定义多文件、逻辑聚合?Vue 本来就可以!

说到一个文件里定义多个文件、逻辑更加聚合,其实本来 Vue 就支持!nvG28资讯网——每日最新资讯28at.com

如果你想要把多个组件写在同一个文件里、让逻辑更加紧凑,那是很简单的事情,只需要使用 Vue 的 defineComponent + h函数,即可做到:nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

使用起来就跟平时 Vue 的模板使用别无二致。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

甚至你可以把爷父孙组件全部定义在同一个文件里。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

使用起来也是跟平时 Vue 的模板使用别无二致。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

nvG28资讯网——每日最新资讯28at.com

h 函数太麻烦?那就用 TSX/JSX!

肯定会有人说 Vue 的h函数用起来太麻烦了,各种层级嵌套,写起来没有 TSX/JSX 那么爽。nvG28资讯网——每日最新资讯28at.com

其实,在 Vue 中也可以写 TSX/JSX !!nvG28资讯网——每日最新资讯28at.com

pnpm i @vitejs/plugin-vue-jsx -D

安装完毕后,需要在 vite.config.ts 中去进行插件配置。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

配置完就可以写 TSX 啦!!!nvG28资讯网——每日最新资讯28at.com

基本渲染 & 响应式 & 事件

我们可以新建一个 TsxComp.tsx 文件,来写 TSX 。写 TSX 可以不在 Vue文件 中去写。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

接着我们可以去渲染这个组件。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

可以看到基本的 渲染 & 响应式 & 事件 已经实现。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

v-if 条件判断渲染

模板中一般使用 v-if 来进行条件判断渲染,而 TSX 是比较接近原生语法的,其实条件判断也很像原生的写法,直接用 &&。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

v-for 循环渲染

模板中使用 v-for 来循环渲染,TSX 更接近原生,需要使用数组方法 map 来进行渲染。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

slot 插槽

在模板中,可以通过插槽 slot 去传入一些 DOM 到组件内去渲染,TSX 中也一样有插槽,只不过用法不像模板那样用,而是跟 Vue 的h函数类似。nvG28资讯网——每日最新资讯28at.com

举个例子,我写一个 TSX 组件接收 default 和 test 两个插槽。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

如果你是从模板传到 TSX 中的话,那么传入的方式无差别,也是使用 template 传入。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

如果你是从 TSX 传到 TSX 的话,那么传入方式通过 props 来传了。nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

图片图片nvG28资讯网——每日最新资讯28at.com

JSX/TSX 性能差

当然你如果用了 JSX/TSX 的话,性能肯定是差一丢丢的,但是这点开销,真不算啥~大不了不用呗,用回 h 函数。nvG28资讯网——每日最新资讯28at.com

图片 图片 nvG28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-99888-0.html说实话,第一次对 Vue 有点小失望

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 从ESB服务组合编排到NetflixConductor微服务编排

下一篇: 还在用 Lodash?这个爆火的替代品贼强,性能提升300% ,体积减少 97%!

标签:
  • 热门焦点
  • Redmi Buds 4开箱简评:才199还有降噪 可以无脑入

    在上个月举办的Redmi Note11T Pro系列新机发布会上,除了两款手机新品之外,Redmi还带来了两款TWS真无线蓝牙耳机产品,Redmi Buds 4和Redmi Buds 4 Pro,此前我们在Redmi Note11T
  • 之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 谷歌KDD'23工作:如何提升推荐系统Ranking模型训练稳定性

    谷歌在KDD 2023发表了一篇工作,探索了推荐系统ranking模型的训练稳定性问题,分析了造成训练稳定性存在问题的潜在原因,以及现有的一些提升模型稳定性方法的不足,并提出了一种新
  • 每天一道面试题-CPU伪共享

    前言:了不起:又到了每天一到面试题的时候了!学弟,最近学习的怎么样啊 了不起学弟:最近学习的还不错,每天都在学习,每天都在进步! 了不起:那你最近学习的什么呢? 了不起学弟:最近在学习C
  • 自律,给不了Keep自由!

    来源 | 互联网品牌官作者 | 李大为编排 | 又耳 审核 | 谷晓辉自律能不能给用户自由暂时不好说,但大概率不能给Keep自由。近日,全球最大的在线健身平台Keep正式登陆港交所,努力
  • 小米MIX Fold 3下月亮相:今年唯一无短板的全能折叠屏

    这段时间以来,包括三星、一加、荣耀等等有不少品牌旗下的最新折叠屏旗舰都有新的进展,其中荣耀、三星都已陆续发布了最新的折叠屏旗舰,尤其号荣耀Magi
  • 三星显示已开始为AR设备研发硅基LED微显示屏

    7月18日消息,据外媒报道,随着苹果首款头显产品Vision Pro在6月份正式推出,AR/VR/MR等头显产品也就将成为各大公司下一个重要的竞争领域,对显示屏这一关
  • 苹果140W USB-C充电器:采用氮化镓技术

    据10 月 30 日 9to5 Mac 消息报道,当苹果推出新的 MacBook Pro 2021 时,该公司还推出了新的 140W USB-C 充电器,附赠在 MacBook Pro 16 英寸机型的盒子里,也支
  • “买真退假” 这种“羊毛”不能薅

    □ 法治日报 记者 王春   □ 本报通讯员 胡佳丽  2020年初,还在上大学的小东加入了一个大学生兼职QQ群。群主“七王”在群里介绍一些刷单赚
Top