1.render函数的介绍

在vue中我们经常使用HTML模板语法来组建页面。
除此之外,使用还可以使用render函数来创建页面。 因为vue是虚拟DOM,拿到template模板时也要转译成VNode的函数。
而直接使用render函数构建DOM。vue就免去了转译的过程。 通过上面这两句话,我们可以发现有这样一个结论:
HTML模板语法来组建页面的渲染过程:
包含模板编译器:1.html字符串[就是template中的html]==》2.render函数==》3.VNode==》4.真实的节点
不包含模板编译器:1.render函数==》2.VNode==》3.真实的节点
也就是说:使用render函数编译的页面,由于少了一层【模板编译】。
渲染的速度要快一些。 render函数的参数是 createElement 函数。
createElement函数还有约定的简写叫h函数。
vm中有一个方法_c,也是这个函数的别名。
createElement 函数的返回值是一个虚拟节点。就是VNode。
也就是我们要渲染的节点。
render(h){
return h('div',{
//第二个参数
class:{
'is-red': this.isRed
}
},
//第三个参数
[h('p','这是一个render')]
);

2.h函数的三个参数

第一个参数是必须的。
类型:{String | Object | Function}
一个 HTML 标签名、一个组件、一个异步组件、或一个函数式组件。
是要渲染的html标签。
第一个参数div 是表示创建一个div的元素 第二个参数是可选的。
类型:{Object} 主要是当前html中的各种属性。
如attrs,class,style等
在开发时。建议传,实在没有传的时候,传入 null 第三个参数可选的。
类型:{String | Array | Object} children
虚拟子节点(vnodes),当前html标签的元素。
参考地址:https://www.cnblogs.com/weichen913/p/9676210.html

如何使用render函数实现以下html

 <div :class="{'is-red':isRed }">
<p>这是一个render</p>
</div>

render函数这样使用

创建一个XXX.js文件 代码如下

// 这是render函数的使用方法
export default{
data(){
return{
isRed:true,
arr:[1,2,3,4],
inputValue:""
}
},
// h 最终创建的是一个元素
// 第一个参数div 是表示创建一个div区域的元素
// 第二个参数class表示的是这个div上有一个属性
// 第三个参数可以是数组,表示div元素下的子元素
render(h){
return h('div',{//第二个参数
class:{
'is-red': this.isRed
}
},
//第三个参数
[h('p','这是一个render')] );
}
}
在使用的页面上引入注册(跟组件一样)
import aa from "./myrender"
components:{
aa
}
<aa></aa>



vue render函数的简单使用(1)的更多相关文章

  1. vue render函数 函数组件化

    之前创建的锚点标题组件是比较简单,没有管理或者监听任何传递给他的状态,也没有生命周期方法,它只是一个接受参数的函数 在这个例子中,我们标记组件为functional,这意味它是无状态(没有data), ...

  2. vue render函数

    基础 vue推荐在绝大多数情况下使用template来创建你的html.然而在一些场景中,你真的需要javascript的完全编程能力.这就是render函数.它比template更接近编译器 < ...

  3. vue render函数解析

    一.render 函数的作用: 写一些vue.js的template太繁琐,利用render,可以使用js来生成模板,更加灵活和简便. 二.使用render前提: 官网也说了.在深入渲染函数之前推荐阅 ...

  4. [转]iview render函数常用总结(vue render函数)

    原文地址:https://blog.csdn.net/weixin_43206949/article/details/89385550 iview 的render函数就是vue的render函数ivi ...

  5. vue render函数使用jsx语法 可以使用v-model语法 vuex实现数据持久化

    render函数使用jsx语法: 安装插件  transform-vue-jsx 可以使用v-model语法安装插件 jsx-v-model .babelrc文件配置: vuex实现数据持久化 安装插 ...

  6. render函数的简单使用

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Vue render函数 函数时组件 jsx

    常规组件使用 定义组件 components/list/list.vue <template> <ul> <li v-for="(item, index) in ...

  8. 会使用基本的Render函数后,就会想,这怎么用 v-for/v-if/v-model;我写个vue Render函数进阶

    https://blog.csdn.net/wngzhem/article/details/54291024

  9. Vue渲染函数

    前面的话 Vue 推荐在绝大多数情况下使用 template 来创建HTML.然而在一些场景中,真的需要 JavaScript 的完全编程的能力,这就是 render 函数,它比 template 更 ...

  10. iview中table的render()函数

    Vue 推荐在绝大多数情况下使用 template 来创建你的 HTML.然而在一些场景中,你真的需要 JavaScript 的完全编程的能力,这就是 render 函数,它比 template 更接 ...

随机推荐

  1. vue2升级vue3:composition api中监听路由参数改变

    vue2 的watch回顾 我们先回顾一下vue2中watch <watch性能优化:vue watch对象键值说明-immediate属性详解> <vue中methods/watc ...

  2. Docker 安装 Elasticsearch、Kibana

    为了Skywalking 准备 elasticsearch 至少 需要2G内存 docker pull elasticsearch:7.9.3 docker run --name elasticsea ...

  3. 阿里云的“终端云化”实践,基于ENS进行边缘架构构建

    终端无休止的更新迭代,是软件对计算资源的需求激增. 作者|王广芳 编辑|IMMENSE 终端云化:打破硬件的桎梏 近几年,"终端云化"技术开始规模化落地,其核心思想是"计 ...

  4. Windows下如何查看某个端口被占用,以及如何杀死某个进程

    查看所有端口 netstat -ano 如何查看某个特定端口的占用情况,比如 8080 netstat -ano|findstr "8080" 杀死一个进程 在查看某个端口被占用的 ...

  5. VS以及C++开发和学习使用注意事项

    VS以及C++开发使用注意事项 在vs2013版本开始出现安全检查 最好提前禁用错误4996 制表符问题:Visual Studio中设置Tab键对应空格数的方如下:依次选择:工具-〉选项 -〉文本编 ...

  6. Windows 10 修改环境变量不重启生效的解决方案

    # 表示 Win 键 #R 进入 cmd(不要使用 Listary 的 cmd 方式进入,设置不会生效) 键入 set PATH=C: 关闭窗口 同样方式打开 cmd 键入 echo %PATH%,会 ...

  7. Codeforces 1092C Prefixes and Suffixes【字符串+思维】

    题目链接:点这里 题意:理解错了题意导致WA好几发,QAQ暴击 题意是判断给你的2*n-2个字符串是前缀还是后缀,不是判断这个字符串的内容...我真的欲哭无泪,理解能力太菜了 思路:将两个n-1长的字 ...

  8. 推荐收藏!年度Top20开源许可证风险等级

    开源许可现状 开发人员经常在软件中引入开源的代码片段.函数.方法和操作代码.因此,软件代码中经常会包含各种声明不同许可证的子组件.这些子组件的许可证条款和条件与项目整体主许可证的条款和条件冲突时,就会 ...

  9. 【RK3399】2.制作ubuntu20.04 roomfs

    firefly自带的文件系统,由于缺少一些基本功能模块,因此,我们可以自己手动制作一个ubuntu20.04的文件系统. 下载Ubuntu根文件系统 http://cdimage.ubuntu.com ...

  10. webpack配置自动打包相关的参数