玩转 Vue 3 全家桶
大圣
前百度前端架构师
38321 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 44 讲
玩转 Vue 3 全家桶
15
15
1.0x
00:00/00:00
登录|注册

38|服务端渲染原理:Vue 3中的SSR是如何实现的?

客户端入口和服务器端入口
component + store + router
SSR: 服务端渲染
CSR: 客户端渲染
SEO优化
首屏加载速度
项目使用SSR的目的?
技术选型的目的
同构应用和其他渲染方式
Vue SSR原理
Webcontainer技术
边缘渲染(ESR)
增量渲染(ISR)
客户端渲染(NSR)
静态网站生成(SSG)
系统复杂度提升
服务器负载增大
部署难度增加
架构图解析
结合SSR和CSR
管理buffer数组实现渲染
renderToString函数渲染组件
template解析成ssrRender函数
返回渲染结果
服务端解析组件
创建Vue实例
使用@vue/server-renderer库
对比CSR
解决问题
思考题
总结
解决方案
SSR+同构的问题
同构应用
SSR源码剖析
SSR实现方式
SSR是什么
Vue 3中的SSR实现原理

该思维导图由 AI 生成,仅供参考

你好,我是大圣,上一讲我们学完 vue-router 源码,Vue 全家桶的生态就基本介绍完了,包括 Vue 的响应式、运行时、编译器,以及全家桶的 vuex 和 vue-router。
今天我来给你介绍 Vue 中优化的一个进阶知识点:SSR(Server Side Rendering),也就是服务端渲染。

SSR 是什么

要想搞清楚 SSR 是什么?我们需要先理解这个方案是为解决什么问题而产生的。
在现在 MVVM 盛行的时代,无论是 Vue 还是 React 的全家桶,都有路由框架的身影,所以,页面的渲染流程也全部都是浏览器加载完 JavaScript 文件后,由 JavaScript 获取当前的路由地址,再决定渲染哪个页面。
这种架构下,所有的路由和页面都是在客户端进行解析和渲染的,我们称之为 Client Side Rendering,简写为 CSR,也就是客户端渲染
交互体验确实提升了,但同时也带来了两个小问题。
首先,如果采用 CSR,我们在 ailemente 项目中执行npm run build命令后,可以在项目根目录下看到多了一个 dist 文件夹,打开其中的 index.html 文件,看到下面的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vite App</title>
<script type="module" crossorigin src="/assets/index.c305634d.js"></script>
<link rel="modulepreload" href="/assets/vendor.9419ee42.js">
<link rel="stylesheet" href="/assets/index.1826a359.css">
</head>
<body>
<div id="app"></div>
</body>
</html>
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Vue 3中的SSR(Server Side Rendering)是如何实现的?本文深入探讨了SSR的概念及其在Vue中的优化实现。首先,文章解释了SSR的背景和意义,指出了在MVVM时代,客户端渲染(CSR)虽然提升了交互体验,但也带来了白屏时间和对搜索引擎的不利影响。接着,文章详细介绍了如何在服务器端实现组件渲染,包括使用@vue/server-renderer库和@vue/compiler-ssr对模板进行编译。然后,文章剖析了Vue SSR的源码实现,包括ssrRender函数的拼接组件渲染结果和renderToString函数的工作原理。最后,文章总结了SSR通过服务器端解析Vue组件的方式,提高了首屏响应时间和页面的SEO友好度。此外,文章还介绍了SSR之后的同构、静态网站生成SSG、增量渲染ISR和边缘渲染ESR等内容,为读者提供了对于SSR相关技术的全面了解。整体而言,本文深入浅出地介绍了Vue 3中SSR的实现原理,为读者提供了深入了解和学习的指引。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《玩转 Vue 3 全家桶》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(5)

  • 最新
  • 精选
  • kai
    SSR等并不是什么新技术,早期魔板还是后端处理的时代,这些技术点实现都是一样的原理。
    2022-07-29归属地:北京
    3
  • Alias
    厉害了,react的next 中有 ssg 概念,看到这里,vue也有,一下子就豁然开朗了,前端框架解决某一类问题的理念都大差不差啊,学习就融会贯通而已
    2022-02-14
    1
    1
  • Geek_c63012
    1. 减少白屏时间 2. 利于seo优化
    2023-04-29归属地:浙江
  • 下一个起跑点
    我这个用egg.js渲染出来的首页模板,点击那个num的<h>标签,怎么不能触发click事件啊?你们的能正常js吗
    2022-06-30
    1
  • james
    厉害了,很全面
    2022-01-19
收起评论
显示
设置
留言
5
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部