vue3+vite使用jsx和tsx详情
安装@vitejs/plugin-vue-jsx
配置vite.config.js
使用实战
第一种写法使用this
第二种写法
第三种写法
安装@vitejs/plugin-vue-jsxyarn add -D @vitejs/plugin-vue-jsx
npm i -D @vitejs/plugin-vue-jsx
配置vite.config.js
...
import vueJsx from '@vitejs/plugin-vue-jsx';
export default defineConfig({
plugins: [vueJsx(), ...],
...
})
使用实战
新建xxx.tsx或者xxx.jsx,注意不再是vue为后缀
第一种写法使用this使用了this,个人不太推荐
import { defineComponent, ref } from 'vue';
export default defineComponent({
setup(){
const str = ref<string>('tsx的使用');
const clickFunc1 = () => {
console.log('没有参数');
}
const clickFunc2 = (msg: string = '默认值') => {
console.log(msg);
}
return {
str,
clickFunc1,
clickFunc2
};
},
render(){
return (
<>
<div class='async'>{this.str}</div>
<button onClick={this.clickFunc1}>不传参数点击</button>
<button onClick={() => this.clickFunc2('额外参数')}>传参数点击</button>
</>
);
}
})
第二种写法
函数体等价于setup,此方式无法获取到props与emits等等(可能我没有了解到),存在交互性强的也不建议使用,否则可以考虑
import { defineComponent, ref } from 'vue';
export default defineComponent(() => {
const str = ref<string>('tsx的使用');
const clickFunc1 = () => {
console.log('没有参数');
}
const clickFunc2 = (msg: string = '默认值') => {
console.log(msg);
}
const render = (
<>
<div class='async'>{str.value}</div>
<button onClick={clickFunc1}>不传参数点击</button>
<button onClick={() => clickFunc2('额外参数')}>传参数点击</button>
</>
);
return () => render;
})
第三种写法
比较推荐这种写法
import { defineComponent, ref } from 'vue';
export default defineComponent({
props: {
params: {
type: Object,
default: () => {}
}
},
setup(props){
const str = ref<string>('tsx的使用');
const clickFunc1 = () => {
console.log('没有参数');
}
const clickFunc2 = (msg: string = '默认值') => {
console.log(msg);
console.log(props);
}
return () => (
<>
<div class='async'>{str.value}</div>
<button onClick={clickFunc1}>不传参数点击</button>
<button onClick={() => clickFunc2('额外参数')}>传参数点击</button>
</>
);
}
})
到此这篇关于vue3+vite使用jsx和tsx详情的文章就介绍到这了,更多相关vue3 jsx/tsx内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!
相关内容
-
学习写字楼新选择6000元主流配置
学习写字楼新选择6000元主流配置,,这种配置需要考虑双核心的办...
-
酷睿I7 配置
酷睿I7 配置,配置,玩家国度啦华硕 Rampage II Extreme(3800元)如...
-
自己保存的鼠标方案在哪里可以找到?鼠标安装步骤
自己保存的鼠标方案在哪里可以找到?鼠标安装步骤,鼠标,方案,本...
-
如何在安装过程中部署DevExpress控件
如何在安装过程中部署DevExpress控件,控件,文件,本文目录如何...
-
提高3A四核羿龙II游戏配置的性能
提高3A四核羿龙II游戏配置的性能,,以节能环保为主题的IT产业,目...
-
opporeno8参数配置及价格
opporeno8参数配置及价格,面部,亿元,Oppo的荣誉2020年1月4日,...
-
三星移动硬盘驱动|三星移动硬盘驱动安装
三星移动硬盘驱动|三星移动硬盘驱动安装,,三星移动硬盘驱动安...
-
金蝶kis标准版8.1破解版|1怎么安装?金蝶kis标准
金蝶kis标准版8.1破解版|1怎么安装?金蝶kis标准版v8.1怎么安...
-
查看配置:酷睿i3530集展示办公平台
查看配置:酷睿i3530集展示办公平台,,由于时间和精力的关系,我们...
-
打印机无法打印出如何安装打印机的问题。
打印机无法打印出如何安装打印机的问题。,,一、类型:autoask数...
-
3500元超额值学生娱乐结构的优化配置
3500元超额值学生娱乐结构的优化配置,,作为一个DIY的主流用户...
-
高档万元i7//GTX460组装X58电脑配置推荐
高档万元i7//GTX460组装X58电脑配置推荐,,GTX460赢得了良好的...
-
军用物资9000元z77游戏安装方案
军用物资9000元z77游戏安装方案,,在英特尔Ivy Bridge平台,主板...
-
电脑小白配置,求助各路装机大神指点?
电脑小白配置,求助各路装机大神指点?,小白,大神,各路,关于你这个...
-
2200元平台经济实用四核APU主机配置建议
2200元平台经济实用四核APU主机配置建议,,英特尔和平台间的较...