首页 > 其他 > 详细

vue2.0之render函数

时间:2018-01-18 21:53:27      阅读:216      评论:0      收藏:0      [点我收藏+]

虽然vue推荐用template来创建你的html,但是在某些时候你也会用到render函数。

虚拟DOM

Vue 通过建立一个虚拟 DOM 对真实 DOM 发生的变化保持追踪。请近距离看一下这行代码:

return createElement(‘h1‘, this.blogTitle)

createElement 到底会返回什么呢?其实不是一个实际的 DOM 元素。它更准确的名字可能是createNodeDescription,因为它所包含的信息会告诉 Vue 页面上需要渲染什么样的节点,及其子节点。我们把这样的节点描述为“虚拟节点 (Virtual Node)”,也常简写它为“VNode”。“虚拟 DOM”是我们对由 Vue 组件树建立起来的整个 VNode 树的称呼。

render方法会传入一个createElement函数,它是一个用于创建DOM元素或者用于实例化其他组件的构造方法。render方法必须返回一个createElement函数的调用结果,也就是模版内的顶层元素(这个方法在vue2的习惯性使用中经常用h来命名)。

eg:

  render示例:

export default {

  render (createElement){

    const menu_items = ["首页","搜索","分类","系统"]

    return createElement(‘ul‘,{

      {

        class:{‘uk-nav‘:true}

      },

    menu_items.map(item=>createElement(‘li‘,item)))

 

}

  }

}

 

上述render方法用template来写的话如下:

    <template>

      <ul>

        <li v-for="item in menu_items">

          {{ item }}

        </li>

      </ul>

    </template>

vue2.0之render函数

原文:https://www.cnblogs.com/qdcnbj/p/8313061.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!