Vue3.0核心源码解读| 组件渲染:vnode 到真实 DOM 是如何转变的?

纸上得来终觉浅,绝知此事要躬行。

原文地址:http://www.eggcake.cn/posts/2020-12-21-vue3-core-source-code-1

在 Vue.js 中,组件是一个非常重要的概念,整个应用的页面都是通过组件渲染来实现的,但是你知道当我们编写这些组件的时候,它的内部是如何工作的吗?从我们编写组件开始,到最终真实的 DOM 又是怎样的一个转变过程呢?本篇内容,我们将会了解 Vue.js 3.0 中的组件是如何渲染的。

首先,组件是一个抽象的概念,它是对一棵 DOM 树的抽象,我们在页面中写一个组件节点:

<hello-world></hello-world>

这段代码并不会在页面上渲染一个<hello-world>标签,而它具体渲染成什么,取决于你怎么编写 HelloWorld 组件的模板。举个例子,HelloWorld 组件内部的模板定义是这样的:

<template>
  <div>
    <p>Hello World</p>
  </div>
</template>

可以看到,模板内部最终会在页面上渲染一个 div,内部包含一个 p 标签,用来显示 Hello World 文本...

原文地址:http://www.eggcake.cn/posts/2020-12-21-vue3-core-source-code-1

 

 

原文地址:https://www.cnblogs.com/webbest/p/14342581.html