vue3+tsx的使用

handlebars 复制代码
<template>
    <div>
    <xiaoman @on-click="getItem" name="似懂非懂"></xiaoman>
    </div>
</template>
  
<script setup lang='ts'>
  import  xiaoman  from  "./App"
  const  getItem=(item:any)=>{
    console.log(item,'item')
  }
</script>
  
<style>
  
</style>
javascript 复制代码
// 返回一个渲染函数
// optionsApi
// setup 函数模式
// ref  template  自动解包.value tsx并不会 ref.value
// v-if不支持  三元表达式去代替v-if
// map 去代替v-for
// v-bind {}代替
// props emit
// 插槽
const A = (slots: any) => (<>
    <div>{slots.default?slots.default:"默认值" }</div>
    <div>{slots.foo?.()}</div>
</>)
interface Props{
    name?:string
}
import { defineComponent,ref } from "vue";
export default defineComponent({
    props: {
        name:String
    },
    emits:['on-click'],
    setup(props:Props,{emit}) {
        const flag = ref(false);
        const data = [
            {
                name:"小满1"
            },
            {
                name:"小满2"
            },
            {
                name:"小满3"
            }
        ]

        const fn = (item:any) => {
            console.log(item, "触发了");
            emit("on-click",item)
        }

        const slot = {
            default: () => (<div>小满default slots</div>),
            foo:()=>(<div>小满foo slots  </div>)
        }
        return () => (<>
            <A v-slots={slot}></A>
            <hr />
            <div> props:{props?.name}</div>
            <hr />
            {
                data.map(v => {
                    return <div onClick={()=>fn(v)}>{ v.name}</div>
                })
            }</>)
    }
    // data(){
    //     return {
    //         age:23
    //     }
    // },
    // render (){
    //     return (<div>{ this.age}</div>)
    // }
}) 

效果图:

相关推荐
sycmancia17 分钟前
Qml——Window元素使用
前端
每天都好困25 分钟前
03 AR 投影与误差修正:把地图上的点贴到视频画面上
前端
每天都好困27 分钟前
04 地图图层封装:像管理 Photoshop 图层一样管理地图元素
前端
去伪存真1 小时前
构建你的第一个 DevOps AI Agent:自动化捕获、分析并修复 CI 故障
前端·agent
niucloud-admin1 小时前
JAVA V6 多商户商城 开发文档——手机端前端
java·开发语言·前端
喵个咪1 小时前
GoWind Admin|风行 — 开箱即用的企业级全栈中后台框架:脚本系统实战
javascript·后端·go
樱花落木兰1 小时前
SpringBoot + ECharts 后台数据统计报表模块实战
java·javascript·spring boot·ai·log4j·github·echarts
skywalk81631 小时前
deepseekharness在对话中,有四种模式,分别是极简、PTC、创造和标准模式,每种模式下挂载的插件、skill等数量不一样
前端·人工智能·实践
愛芳芳1 小时前
element-plus+vite+vue3+pinpa+mock+typeScript搭建经典的电商管理后台
前端·javascript·typescript
liangshanbo12152 小时前
面试题:常见的前端构建工具有哪些?分别适用于什么场景?
前端