In vue3.0, the h function is the createElement method in vue. The function of this function is to create virtual dom, track dom changes, and display the process of how the template is rendered into html.
The operating environment of this article: Windows 10 system, Vue3 version, DELL G3 computer.
The h function is to create nodes, which can show how the template is rendered to html In the process, because vue is rendered to the page through the loader, it is packaged into a template string and rendered together, so the h function is also rendered into html through a string.
h function is the createElement method in vue, this The function is to create virtual dom and track dom changes
app.vue
main.js
import { createApp, defineComponent, h } from 'vue' import HelloWorld from './components/HelloWorld.vue' // defineComponent定义组件 // h创建节点, 可实现展示template如何渲染到html中得过程,因为vue渲染到页面上是通过loader打包成模板字符串拼接渲染得,所以 h 函数同样也是通过字符串渲染到html中 // 第一个参数 节点类型 p为dom原生节点,需要通过字符串"p"来标识 // 第二个参数 节点属性 p节点得属性 // 第三个参数 节点的孩子节点 内部节点(子内容) // import App from './App.vue' const img = require('./assets/logo.png') // eslint-disable-line // 由于ts中不支持require所以需要取消校验,直接加注释方可 const App = defineComponent({ render() { return h('p', { id: 'app' }, [ h('img', { alt: 'vue.logo', src: img, }), h(HelloWorld, { msg: 'Welcome to Your Vue.js + TypeScript App', name: '李四', age: 15, sex: '男', }), ]) }, })
You can see from the source code that the h function is actually createVNode, so you can also quote createVNode instead of h
[Related recommendations: "vue.js Tutorial" 】
The above is the detailed content of What is the h function in vue3.0. For more information, please follow other related articles on the PHP Chinese website!