vite2+vue3使用tsx报错React is not defined、h is not defined


vite.jsx.tsx 文件提供开箱即用支持。

如果不是在 react 中使用 jsx,对于报错:

React is not defined

需要在 vite.config.js 文件中添加如下配置:

export default {
  esbuild: {
    jsxFactory: 'h',
    jsxFragment: 'Fragment'
  }
}

此时重新启动项目如有报错:

h is not defined

需要在 .jsx.tsx 文件中手动引入 import { h } from 'vue';

或者使用vite的注入helper自动引入 h

export default {
  esbuild: {
    jsxInject: "import { h } from 'vue';"
  }
}