Vue3 超前版发布三个新特性!有望全面拥抱 JSX/TSX!

前言

大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~

拥抱 JSX/TSX?

我们都知道 Vue 一直主流是使用 template 模板来进行页面的编写

而就在最近,Vue3 的超前项目 Vue Macros 中,发布了 defineRender、setupComponent、setupSFC 这些新的 API,这代表了,以后 Vue3 有可能可以全面拥抱 JSX/TSX 了!!

说这个新 API 之前,我们先来说说什么是 Vue Macros

Vue Macros

Vue Macros 是由 Vue 团队成员维护的一个 超前版 Vue

许多 Vue3 的新 API 都是在这个项目中孵化出来的,比如 Vue3.4 的:

  • defineOptions
  • defineModel

所以从 Vue Macros 这个项目,也可以预见到 Vue3 未来可能会发布的新 API 和新特性

Vue Macros 中很多功能都是超前功能,在 Vue3 正式版中并没有这些功能,如果想要体验这些超前功能,需要安装对应的插件

bash 复制代码
npm i -D unplugin-vue-macros

并在 vite.config.ts 中配置这个插件

回顾 Vue3 现有渲染方式

template

我们在开发 Vue 时,在很多情况下,都会使用 template 来编写页面

h 函数

但是在编写一些比较灵活且基础的组件(比如组件库)时,使用 template 来编写比较费劲,所以有些时候也会使用 h 函数来编写

但是可以看到,虽然 h 函数更加贴近 JavaScript,更加灵活,但是当层级太多时,写起来也是非常的不方便~

@vitejs/plugin-vue-jsx

所以 Vue3 在之前推出了 @vitejs/plugin-vue-jsx 这个插件,目的就是为了开发者能在 Vue3 项目中去使用 JSX/TSX

bash 复制代码
pnpm i @vitejs/plugin-vue-jsx

拥抱 JSX/TSX!!!

defineRender

defineRender 是 Vue 超前项目 Vue Macros 中推出的一个新的 API,它很有大可能会在未来的 Vue3 正式版中推出

我们可以通过安装 Vue Macros 的插件来体验这一超前功能

setupComponent

setupComponent 让 Vue3 越来越像 React 了!!!在超前项目中,推出了 defineSetupComponent 这个 API ,让你可以使用 JSX 去编写一个组件

setupSFC

setupSFC 的模式下,无需在包裹 defineSetupComponent 这个函数了,甚至可以直接写在 tsx 文件中,来编写一个 SFC

结语 & 加学习群 & 摸鱼群

我是林三心

  • 一个待过小型toG型外包公司、大型外包公司、小公司、潜力型创业公司、大公司的作死型前端选手;
  • 一个偏前端的全干工程师;
  • 一个不正经的掘金作者;
  • 一个逗比的B站up主;
  • 一个不帅的小红书博主;
  • 一个喜欢打铁的篮球菜鸟;
  • 一个喜欢历史的乏味少年;
  • 一个喜欢rap的五音不全弱鸡

如果你想一起学习前端,一起摸鱼,一起研究简历优化,一起研究面试进步,一起交流历史音乐篮球rap,可以来俺的摸鱼学习群哈哈,点这个,有7000多名前端小伙伴在等着一起学习哦 --> 摸鱼沸点

相关推荐
前端小巷子29 分钟前
Webpack 5模块联邦
前端·javascript·面试
玲小珑32 分钟前
Next.js 教程系列(十九)图像优化:next/image 与高级技巧
前端·next.js
晓得迷路了32 分钟前
栗子前端技术周刊第 91 期 - 新版 React Compiler 文档、2025 HTML 状态调查、Bun v1.2.19...
前端·javascript·react.js
江城开朗的豌豆39 分钟前
Vue和React中的key:为什么列表渲染必须加这玩意儿?
前端·vue.js·面试
江城开朗的豌豆44 分钟前
前端路由傻傻分不清?route和router的区别,看完这篇别再搞混了!
前端·javascript·vue.js
pengzhuofan1 小时前
Web开发系列-第0章 Web介绍
前端
小鱼人爱编程1 小时前
Java基石--反射让你直捣黄龙
前端·spring boot·后端
JosieBook2 小时前
【web应用】如何进行前后端调试Debug? + 前端JavaScript调试Debug?
前端·chrome·debug
LBJ辉2 小时前
2. Webpack 高级配置
前端·javascript·webpack
灵感__idea9 小时前
JavaScript高级程序设计(第5版):好的编程就是掌控感
前端·javascript·程序员