当前位置: 首页 > news >正文

12-render函数

render函数

一、render的作用

非单文件组件时,创建vm的写法:

new Vue({el: '#root',template: `<App></App>`,components: {App}
})

但是该写法在脚手架中会报错。因为脚手架默认引入的是个残缺版的vue。

如果要避免报错,有2种解决方案:

  1. 引入完整版的vue

  2. 或者使用rander

在脚手架中,引入的Vue:

import Vue from 'vue'

实际引入的是dist/vue.runtime.esm.js,是一个不含模板解析器的js。

引入的js是配置在vue模块package.jsonmodule配置项中。

如果要引入完整版的vue:

// 引入完整版的vue
import Vue from 'vue/dist/vue.js'

这时就可以正常的在new Vue中使用template配置。

如果使用了残缺版的vue,就需要使用render替换template配置。

例如:

template: `<h1>Hello</h2>`

替换为:

render(createElement) {return createElement('h1', 'Hello')
}

因为render没有用this,就可以简写为:

render:h => h('h1', 'Hello')

如果模板中的内容不是html标签,而是引入的组件,就可以写为:

render: h => h(App)

二、Vue库文件

vue组价的dist下有很多vue库文件:

其中vue.js是最完整最原始的vue,包括了Vue的核心功能和模板解析;

vue.runtime.xxxx.js是运行时库,里面移除了模板解析功能。

xxxx.esm.js是使用ES6进行模块化的库(ES6 Module)

xxxx.common.js使用CommonJS进行模块化的库

因为vue.runtime.xxx.js没有模板解析器,所以不能使用template配置项,需要使用render函数接收到的createElement函数去指定具体内容。

对于.vue后缀的组件文件中使用标签配置的模板:

<template>{{msg}}
</template>

vue通过在package.json引入了vue-template-compiler来进行解析

先赞后看,养成习惯!!!^ _ ^ ❤️ ❤️ ❤️
码字不易,大家的支持就是我的坚持下去的动力。点赞后不要忘了关注我哦!

http://www.lryc.cn/news/17225.html

相关文章:

  • 磨金石教育摄影技能干货分享|杨元惺佳作欣赏——诗意人文
  • 在Pandas中通过时间频率来汇总数据的三种常用方法
  • 基于SPI的增强式插件框架设计
  • 176、【动态规划】leetcode ——1143. 最长公共子序列(C++版本)
  • 16行代码采集原神官网角色全图+全语音
  • Unity(二)--通过简单例子了解UGUI几个常用对象操作(Text,Image,Button)
  • 手写一个文件上传demo
  • 通过 Apifox Echo 了解 Content-Length
  • ESP32设备驱动-CPU频率设置
  • 超声波风速风向传感器的技术参数
  • 【vue2每日小知识】实现store中modules模块的封装与自动导入
  • 【Leetcode 剑指Offer】第3天 字符串(简单)
  • 【双指针问题】LeetCode344、345、 844、283问题详解及代码实现
  • Linux基础命令-netstat显示网络状态
  • 液氮恒温器(电学)T9015的技术规格
  • 字节跳动大规模实践埋点自动化测试框架设计
  • 自动化测试优势和劣势
  • 数据结构---顺序表
  • springboot基础
  • 华为OD机试真题Python实现【 时间格式化】真题+解题思路+代码(20222023)
  • android kotlin 协程(五) suspend与continuation
  • JavaScript事件循环
  • 华为OD机试真题Python实现【最少停车数】真题+解题思路+代码(20222023)
  • Python每日一练(20230223)
  • Flask----------第一个flask项目,debug、host、port的配置
  • 容器技术概述
  • 「SAP」ABAP模块学习需要了解什么?快收下这份ABAP技术栈指南【附技能树】
  • 【python 基础篇 九】python的常用数据类型操作-------时间日历
  • 华为OD机试真题Python实现【相同字符连续出现的最大次数】真题+解题思路+代码(20222023)
  • 【Unity3D】空间和变换