render方法的具体含义

Vue 项目的main.js 中: render: h => h(App) 具体含义解释

请解释:render: h => h(App) 这段话的意思?

1
2
3
4
5
6
7
# main.js
new Vue({
el: '#app',
router: router,
store: store,
render: h => h(App)
})

render: h => h(App) 是下面内容的缩写:

1
2
3
4

render: function (createElement) {
return createElement(App);
}

进一步缩写为(ES6 语法):

1
2
3
4

render (createElement) {
return createElement(App);
}

再进一步缩写为:

1
2
3
4

render (h){
return h(App);
}

按照 ES6 箭头函数的写法,就得到了:

1
2

render: h => h(App);

其中 根据 Vue.js 作者 Even You 的解释,h 的含义如下:
它来自单词 hyperscript,这个单词通常用在 virtual-dom 的实现中。Hyperscript 本身是指生成HTML 结构的 script 脚本,因为 HTML 是 hyper-text markup language 的缩写(超文本标记语言)

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器