render
-
类型:
(createElement: () => VNode) => VNode
-
详细:
字符串模板的代替方案,允许你发挥 JavaScript 最大的编程能力。该渲染函数接收一个
createElement
方法作为第一个参数用来创建VNode
。如果组件是一个函数组件,渲染函数还会接收一个额外的
context
参数,为没有实例的函数组件提供上下文信息。Vue 选项中的
render
函数若存在,则 Vue 构造函数不会从template
选项或通过el
选项指定的挂载元素中提取出的 HTML 模板编译渲染函数。
1. render方法的实质就是生成template模板;
2. 通过调用一个方法来生成,而这个方法是通过render方法的参数传递给它的;
3. 这个方法有三个参数,分别提供标签名(组件),标签相关属性,标签内部的html内容
4. 通过这三个参数,可以生成一个完整的模板
备注:
- render方法可以使用JSX语法,但需要Babel plugin插件;
- render方法里的第三个参数可以使用函数来生成多个组件(特别是如果他们相同的话),只要生成结果是一个数组,且数组元素都是VNode即可;