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

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

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

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

Vue-Vine

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

基本渲染 & 响应式 & 事件

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

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

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

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

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

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

v-if 条件判断渲染

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

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

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

v-for 循环渲染

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

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

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

slot 插槽

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

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

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

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

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

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

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

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

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

JSX/TSX 性能差

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

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

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

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

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

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

标签:
  • 热门焦点
  • JavaScript 混淆及反混淆代码工具

    介绍在我们开始学习反混淆之前,我们首先要了解一下代码混淆。如果不了解代码是如何混淆的,我们可能无法成功对代码进行反混淆,尤其是使用自定义混淆器对其进行混淆时。什么是混
  • 十个简单但很有用的Python装饰器

    装饰器(Decorators)是Python中一种强大而灵活的功能,用于修改或增强函数或类的行为。装饰器本质上是一个函数,它接受另一个函数或类作为参数,并返回一个新的函数或类。它们通常用
  • 三言两语说透柯里化和反柯里化

    JavaScript中的柯里化(Currying)和反柯里化(Uncurrying)是两种很有用的技术,可以帮助我们写出更加优雅、泛用的函数。本文将首先介绍柯里化和反柯里化的概念、实现原理和应用
  • 虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了“本地生活”入口,位置较深,位于首页的“充值中心”内,目前主要售卖美食相关的
  • 携众多高端产品亮相ChinaJoy,小米带来一场科技与人文的视听盛宴

    7月28日,全球数字娱乐领域最具知名度与影响力的年度盛会中国国际数码互动娱乐展览会(简称ChinaJoy)在上海新国际博览中心盛大开幕。作为全球领先的科
  • 造车两年股价跌六成,小米的估值逻辑变了吗?

    如果从小米官宣造车后的首个交易日起持有小米集团的股票,那么截至2023年上半年最后一个交易日,投资者将浮亏59.16%,同区间的恒生科技指数跌幅为52.78%
  • 支持aptX Lossless无损传输 iQOO TWS 1赛道版发布限时优惠价369元

    2023年7月4日,“无损音质,声动人心”iQOO TWS 1正式发布,支持aptX Lossless无损传输,限时优惠价369元。iQOO TWS 1耳机率先支持端到端aptX Lossless无
  • 利用职权私自解除被封帐号 Meta开除20多名员工

    11月18日消息,据外媒援引知情人士表示,过去一年时间内,Facebook母公司Meta解雇或处罚了20多名员工以及合同工,指控这些人通过内部系统以不当方式重置用户帐号,其
Top