vue3 中直接使用 JSX ( lang=“tsx“ 的用法)

1. 安装依赖

c 复制代码
npm i @vitejs/plugin-vue-jsx

2. 添加配置

vite.config.ts 中

ts 复制代码
import vueJsx from '@vitejs/plugin-vue-jsx'

plugins 中添加

ts 复制代码
vueJsx()

3. 页面使用

html 复制代码
<!-- 注意  lang  的值为  tsx -->
<script setup lang="tsx">
const isDark = ref(false)

// 此处使用了 JSX
const Sunny = () => <div class="i-bx:sun w-1em h-1em"></div>
const Moon = () => <div class="i-bx:moon w-1em h-1em"></div>
</script>

<template>
  <el-switch v-model="isDark" :active-action-icon="Moon" :inactive-action-icon="Sunny"> </el-switch>
</template>
相关推荐
Sheldon一蓑烟雨任平生6 小时前
Vue3 组件库 Element Plus
vue.js·vue3·element plus·element ui·vue3 常用组件库
全栈前端老曹20 小时前
【前端组件封装教程】第3节:Vue 3 Composition API 封装基础
前端·javascript·vue.js·vue3·组合式api·组件封装
Sheldon一蓑烟雨任平生2 天前
Vue3 任务管理器(Pinia 练习)
vue.js·vue3·pinia·任务管理器·pinia 练习
云外天ノ☼3 天前
待办事项全栈实现:Vue3 + Node.js (Koa) + MySQL深度整合,构建生产级任务管理系统的技术实践
前端·数据库·vue.js·mysql·vue3·koa·jwt认证
!win !4 天前
通过重写组件轻松掌握用JSX写Vue项目
vue·jsx
行走的陀螺仪4 天前
uni-app + Vue3 实现折叠文本(超出省略 + 展开收起)
前端·javascript·css·uni-app·vue3
Sheldon一蓑烟雨任平生5 天前
Vue 用户管理系统(路由相关练习)
vue.js·vue3·axios·json-server·vue-router·vue 路由·vue-link
Sheldon一蓑烟雨任平生6 天前
Vue3 插件(可选独立模块复用)
vue.js·vue3·插件·vue3 插件·可选独立模块·插件使用方式·插件中的依赖注入
IT教程资源C7 天前
(N_158)基于微信小程序学生社团管理系统
mysql·vue3·前后端分离·社团小程序·springboot社团小程序
H_HX1268 天前
vue3 - 图片放大镜效果实现
前端·vue.js·vue3·vueuse·图片放大镜