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

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

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

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

Vue-Vine

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

基本渲染 & 响应式 & 事件

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

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

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

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

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

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

v-if 条件判断渲染

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

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

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

v-for 循环渲染

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

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

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

slot 插槽

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

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

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

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

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

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

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

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

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

JSX/TSX 性能差

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

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

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

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

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

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

标签:
  • 热门焦点
  • Redmi Pad评测:红米充满野心的一次尝试

    从Note系列到K系列,从蓝牙耳机到笔记本电脑,红米不知不觉之间也已经形成了自己颇有竞争力的产品体系,在中端和次旗舰市场上甚至要比小米新机的表现来得更好,正所谓“大丈夫生居
  • 轿车从天而降电动车主被撞身亡 超速抢道所致:现场视频让网友吵翻

    近日,上海青浦区法院判决轿车从天而降电动车主被撞身亡案,轿车车主被判有期徒刑一年。案件显示当时男子驾驶轿车在上海某路段行驶,前车忽然转弯提速超车,
  • 十个可以手动编写的 JavaScript 数组 API

    JavaScript 中有很多API,使用得当,会很方便,省力不少。 你知道它的原理吗? 今天这篇文章,我们将对它们进行一次小总结。现在开始吧。1.forEach()forEach()用于遍历数组接收一参
  • Java NIO内存映射文件:提高文件读写效率的优秀实践!

    Java的NIO库提供了内存映射文件的支持,它可以将文件映射到内存中,从而可以更快地读取和写入文件数据。本文将对Java内存映射文件进行详细的介绍和演示。内存映射文件概述内存
  • 一个注解实现接口幂等,这样才优雅!

    场景码猿慢病云管理系统中其实高并发的场景不是很多,没有必要每个接口都去考虑并发高的场景,比如添加住院患者的这个接口,具体的业务代码就不贴了,业务伪代码如下:图片上述代码有
  • 一文搞定Java NIO,以及各种奇葩流

    大家好,我是哪吒。很多朋友问我,如何才能学好IO流,对各种流的概念,云里雾里的,不求甚解。用到的时候,现百度,功能虽然实现了,但是为什么用这个?不知道。更别说效率问题了~下次再遇到,
  • ESG的面子与里子

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之三伏大幕拉起,各地高温预警不绝,但处于厄尔尼诺大“烤”之下的除了众生,还有各大企业发布的ESG报告。ESG是“环境保
  • 疑似小米14外观设计图曝光:后置相机模组变化不大

    下半年的大幕已经开启,而谁将成为下半年手机圈的主角就成为了大家关注的焦点,其中被传有望拿下新一代骁龙8 Gen3旗舰芯片的小米14系列更是备受大家瞩
  • 引领旗舰级影像能力向中端机普及 OPPO K11 系列发布 1799 元起

    7月25日,OPPO正式发布K系列新品—— OPPO K11 。此次 K11 在中端手机市场长期被忽视的影像板块发力,突破性地搭载索尼 IMX890 旗舰大底主摄,支持 OIS
Top