vue2——new Vue({router,store, render: h => h(App) }).$mount(‘#app‘);分析

router

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

javascript 复制代码
render: function (createElement) {
    return createElement(App);
}

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

javascript 复制代码
render (createElement) {
    return createElement(App);
}

再进一步缩写为:

javascript 复制代码
render (h){
    return h(App);
}

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

javascript 复制代码
render: h => h(App);

It comes from the term "hyperscript", which is commonly used in many virtual-dom implementations. "Hyperscript" itself stands for "script that generates HTML structures" because HTML is the acronym for "hyper-text markup language".

它来自单词 hyperscript,这个单词通常用在 virtual-dom 的实现中。Hyperscript 本身是指

生成HTML 结构的 script 脚本,因为 HTML 是 hyper-text markup language 的缩写(超文本标记语言)

个人理解:createElement 函数是用来生成 HTML DOM 元素的,也就是上文中的 generate HTML structures,也就是 Hyperscript,这样作者才把 createElement 简写成 h。h是 Vue.js 里面的 createElement 函数,这个函数的作用就是生成一个 VNode节点,render 函数得到这个 VNode 节点之后,返回给 Vue.js 的 mount 函数,渲染成真实 DOM 节点,并挂载到根节点上。

相关推荐
boleixiongdi几秒前
# Bsin-App Uni:面向未来的跨端开发框架深度解析
前端
G等你下课4 分钟前
AJAX请求跨域问题
前端·javascript·http
前端西瓜哥4 分钟前
pixijs 的填充渲染错误,如何处理?
前端
阑梦清川5 分钟前
Java后端项目前端基础Vue(二)
vue.js
snakeshe10105 分钟前
6-1. 实现 useState
前端
呆呆没有脑袋7 分钟前
深入浅出 JavaScript 闭包:从核心概念到框架实践
前端
snakeshe10108 分钟前
用100行代码实现React useState钩子:多状态管理揭秘
前端
爱编程的喵8 分钟前
JavaScript闭包深度解析:从作用域到实战应用
前端·javascript
ITfeib10 分钟前
Flutter
开发语言·javascript·flutter
雪碧聊技术1 小时前
深入解析Vue中v-model的双向绑定实现原理
前端·javascript·vue.js·v-model