前言:在开发前段页面使用vue时,咱们能常常看到template标签。这里粗略讲下本身对vue中template理解和使用。html
咱们知道HTML中全部的内容都是节点组成的。
当网页被加载时,浏览器会建立页面的文档对象模型(Document Object Model)。
经过DOM,能够访问全部的HTML元素,连同它们的文本和属性,能够进行修改、删除以及建立新的元素。
HTML文档中的全部元素(节点)组成了一个文档树(节点树、DOM树)
vue
相比频繁的手动去操做dom而带来的性能问题,vdom(virtual-dom)很好的将dom作了一层映射关系,将咱们本须要直接进行dom的一系列操做映射到了vdom中。
在vdom上定义了关于真实dom的一些关键信息,而vdom彻底使用js去实现的,和宿主浏览器没有任何联系。
此外得益于js的执行速度,将本来须要在真实dom进行的建立节点,删除节点,添加节点等一系列复杂的dom操做所有放到vdom中进行,这样就经过操做vdom来提升直接操做的dom的效率和性能。编程
在Vue的整个应用生命周期当中,每次须要更新视图的时候便会使用vdom。浏览器
在HTML5中,templae用来声明"模板元素"。框架
<script type="text/template">复制代码
template性质:dom
template:"<four_component/>"
复制代码
做为组件时须要先注册;不是组件,则设置成字符串组件化
template:"<div><div/>"
复制代码
当咱们直接应用组件时,由于vue没法直接进行渲染而致使组件失效性能
<child-component>想要输出的内容</child-component>
复制代码
若是要使用组件标签,咱们就能够利用template标签,加上slot插槽属性,组成<template slot="插槽名"></template>spa
<child-component>
<template slot="插槽名">
想要输出的内容
</template>
</child-component 复制代码