vue render函数 使用

语法

render:function(createElement){
	return createElement('标签名称',{标签属性},['标签内容'])
}

基本使用

new Vue({
	render:function(createElement){
		  const div = createElement(
              'div', // 标签名称
              { // 标签属性
                  class:'box',
                  style:{color: 'red',}
              },
              ['创建的div']  // 标签内容
          )
		// 或者  createElement(div',['创建的div']) 
		return div
	}
}).$mount('#app')

在这里插入图片描述

套娃

new Vue({
	render:function(createElement){
		  const header = createElement(
             'div', 
              {class:'header'},
              ['header 部分']
          )
          const center = createElement(
              'div', 
              {class:'center',style:{border:'1px solid gray'}},
              [
                  'center 部分',
                  createElement('button',['按钮1']),
                  createElement('button',{
                      style:{
                          marginLeft:'20px'
                      }
                  },['按钮2'])
              ] 
          )
          const footer = createElement(
              'div', 
              {class:'center'},
              ['footer 部分']
          )

          const con = createElement(
              'div', 
              {class:'container'},
              ['container 容器',header,center,footer]
          )
          return con  
	}
}).$mount('#app')

在这里插入图片描述

传入组件对象

<template id="temp">
    <div>
        组件对象 {{msg}}
    </div>
</template>

new Vue({
	render:function(createElement){
		return createElement({
             template:"#temp",
             data:()=>({
                 msg:' render 传入组件 对象'
             })
         })
	}
}).$mount('#app')

在这里插入图片描述

new Vue({
	render:function(createElement){
		
	}
}).$mount('#app')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值