详解vue2.0中 render: h => h(App)

创建一个vue项目,基本都是用到vue-cli,新建的项目main.js里面会有这么一句代码:

new Vue({  render: h => h(App),}).$mount('#app')

这个就是创建一个vue对象,然后挂载到制定的页面节点。

这里重点说的是 render: h=>h(App) 是啥意思?怎么理解?

这个首先要知道ES6的箭头函数的用法,这个函数还原就是如下:

//createElement就是h,一个形参,没有具体意义,可以随意改变书写render:(function(createElement){    return createElement(App);})

然后再看vue2.0官方文档,对render方法的描述如下:

render

  • 类型(createElement: () => VNode) => VNode

  • 详细

    字符串模板的代替方案,允许你发挥 JavaScript 最大的编程能力。该渲染函数接收一个 createElement 方法作为第一个参数用来创建 VNode

    如果组件是一个函数组件,渲染函数还会接收一个额外的 context 参数,为没有实例的函数组件提供上下文信息。

    Vue 选项中的 render 函数若存在,则 Vue 构造函数不会从 template 选项或通过 el选项指定的挂载元素中提取出的 HTML 模板编译渲染函数。

  • 参考渲染函数

说明:render是一个方法,自带一个形参createElement,这个参数也是一个方法,是用来创建vue 节点的,也就是html模板的,然后渲染(render)到指定的节点上

转自:https://blog.csdn.net/playboyanta123/article/details/99675795

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容