jsx ReferenceError: h is not defined 原因

发布时间 2023-09-13 10:36:13作者: hrdom

我是原因是render函数放的位置不对

jsx的h函数大概是自动注入到某些位置,比如data()内、methods内,而我是放在了

<script>

这个位置
export default {

所以h函数没有,需要通过import或者传参方式,使render函数能获取到h函数

 

 

render函数内下个断点,可以看到data闭包下有h函数变量


import { h } from 'vue'

export default {
  data() {
    return {
      msg: 'hello'
    }
  },
  render() {
    return h('div', this.msg)
  }
}