tsx语法

vue3_tsx语法

// 1、插件安装
npm install @vitejs/plugin-vue-jsx -D

// 2、vite.config.ts配置
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(), vueJsx()]
})

// 3、tsconfig.json配置
compilerOptions中添加如下:
 "jsx": "preserve",
 "jsxFactory": "h",
 "jsxFragmentFactory": "Fragment",


// 4. index.tsx
```js
import { reactive, ref } from 'vue'
const v = ref<string>('jsxbox')
const list = reactive<number[]>([1, 2, 3, 4, 5])
function handleClick(number: number) {
  console.log(number)
}
type Props = {
  msg: string
}

export default (props: Props, ctx: any) => {
  return (
    <div class={v.value}>
      <div class={'title'}>{props.msg}</div>
      {console.log(ctx)} // const {attrs, emit, slots} = ctx
      <ul>
        {list.map((item, index) => (
          <li onClick={handleClick.bind(this, item)} key={index}>第{item}条数据</li>
        ))}
      </ul>
    </div>
  )
}
posted @   前端之旅  阅读(346)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示