详解在vue3中使用jsx的配置以及一些小问题
目录
- 配置
- 模版语法
- v-if/v-show
配置 【详解在vue3中使用jsx的配置以及一些小问题】在vue3中使用jsx十分方便,只需要安装官方的
@vitejs/plugin-vue-jsx
插件,在vite.config.ts
中配置// vite.config.tsimport vueJsx from "@vitejs/plugin-vue-jsx"; export default {plugins: [vueJsx()]}
配置了
vite.config.ts
后虽然已经可以使用jsx,页面也正常渲染了,但是还是会提示无法使用jsx,此时还需要在tsconfig.ts
中配置"jsx": "preserve"
属性,就可以愉快的使用jsx形式来写vue了。文章图片
// tsconfig.ts{"jsx": "preserve",}
模版语法 使用jsx时setup需要返回一个函数,函数返回jsx形式。不过使用jsx形式也有不好的地方,在使用数据就比较烦,不能像模版中一样直接使用,需要加上
.value
,虽然新的volar插件已经会自动添加.value了,但还是很难受,一不小心就会忘记写。v-if/v-show
还有不太方便的一个点就是v-if无法使用,jsx中得使用三元表达式,但是三元感觉看起来不是很舒服
export default defineComponent({setup() {const msg = ref("tsx component"); const isShow = ref(false); function onClick() {isShow.value = https://www.it610.com/article/!isShow.value; }return () => {return ({msg.value}{isShow.value && {isShow.value ? "show" : "hide"}}onClick ); }; },});
如果直接使用v-if就会报错
无法读取未定义的属性
文章图片
但是
v-show
是可以使用的,但v-if
不行,不知道为什么,可能是直接jsx默认推荐使用isShow &&
或者三元的形式吧{msg.value}{isShow.value && {isShow.value ? "show" : "hide"}}{isShow.value ? "show" : "hide"}onClick
v-show正确显示出了show div,dom中也是通过display做的显影,三元则是创建和销毁的dom
文章图片
v-for
就更不用想了,就用map吧,map也挺好用的,不过v-model
还是可以使用的,显示也正常export default defineComponent({setup() {const msg = ref("tsx component"); return () => {return (< div> < div> {msg.value}< /div> < el-input v-model={msg.value} /> < /div> ); }; },});
到此这篇关于在vue3中使用jsx的配置以及一些小问题的文章就介绍到这了,更多相关在vue3中使用jsx的配置以及一些小问题内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Python|Python matplotlib seaborn绘图教程详解
- mysql|mysql 段错误 (core dumped)_段错误调试神器 - Core Dump详解
- linux怎么导出dmp文件怎么打开|linux怎么导出dmp文件怎么打开,Linux开发实用工具之详解coredump-dmp文件怎么打开...
- vue|vue @input带参数_Vue组件通信详解
- SQL注入|SQL注入漏洞详解(一)
- #|DVWA-sql注入漏洞详解
- mysql|mysql 注入 3.0_ThinkPHP 3.0~3.2 SQL注入漏洞详解与利用
- php注入后台,用SQL注入漏洞登录后台
- 演武场|74cms3.0安装以及cmsSQL注入漏洞详解
- 数据库|SQL注入漏洞 详解