vue ssr
https://mp.weixin.qq.com/s/v1c69bJ5PxGcqt-ZU4FVXw
https://juejin.im/entry/590ca74b2f301e006c10465f
https://www.zhihu.com/question/32524504?sort=created
vue2.0才推出vue 服务端渲染,用于提升首屏渲染速度,不过对于海量PV级的业务,直出模板的渲染效率直接影响服务端的压力
前后端分离的方式不利于网站SEO,有SEO需求的页面迫切需要服务端渲染。
node框架选型(主流):hapi、express、koa。
vue和react可以进行前后端同构,一样的逻辑不用写两份。
当前常用的模板渲染方案可以归结成两类:
a类:string-based (基于字符串拼接),传统,输出的就是字符串、所以可以用于生成ini、css、shell等其他文件,而不一定要是html,对于以输出页面为主的服务,这种模式还是挺不错的。
b类:virtual-dom-based(基于虚拟dom对象),新潮,基本上不考虑输出HTML/XML以外的东西。dom-base的模板引擎可以实现虚拟dom之类的东西,在数据变化的时候,实现最少的更新操作,而不像string-base的引擎,数据发生变化就要全部重新生成一大堆的字符串。
vue ssr 的模板是b类。
string-based模板渲染
比较好用的前端模板引擎是:https://github.com/ecomfe/etpl 和 https://aui.github.io/art-template/zh-cn/index.html
字符串渲染的性能其实也就在后端比较有意义,毕竟每一次渲染都是在消耗服务器资源,但在前端,用户只有一个,几十毫秒的渲染时间跟请求延迟比起来根本不算瓶颈
一个好的模板引擎
具备纯前端环境的解析能力
具备良好的调试能力。可以使用Source Map或其它自定义的手段直接映射回原模板片段,不过现在并没有什么模板引擎实现了这一功能
承担XSS的防范,要求默认转义和特定语法的无转义输出(用于富文本)
片段的复用
支持数据输出时的处理,如filter功能。假如数据处理放到模板渲染前用js逻辑处理,会导致业务逻辑混杂,增加维护的负担
支持动态数据,即依赖运行环境的能力(而不是模板编译的环境)
每个模板实例之间是隔离(如一个页面中多个相同的模板片段id不出现冲突)
vue ssr
这里提供了3个可运行的vue-ssr例子:https://github.com/947133297/ssr/tree/master/vue
以及我学习时的文档备注:http://www.cnblogs.com/hellohello/p/8243400.html
vue ssr的更多相关文章
- 转载一篇好理解的vue ssr文章
转载:原文链接https://www.86886.wang/detail/5b8e6081f03d630ba8725892,谢谢作者的分享 前言 大多数Vue项目要支持SSR应该是为了SEO考虑,毕竟 ...
- Vue SSR不可不知的问题
Vue SSR不可不知的问题 本文主要介绍Vue SSR(vue服务端渲染)的应用场景,开发中容易遇到的一些问题,提升ssr性能的方法,以及ssr的安全性问题. ssr的应用场景 1.SEO需求 SE ...
- Vue SSR 配合Java的Javascript引擎j2v8实现服务端渲染2创建Vue2+webpack4项目
前提 安装好nodejs并配置好环境变量,最好是 node10,https://nodejs.org/en/download/ 参考我之前的文章 debian安装nodejs Yarn &&a ...
- Vue SSR常见问题、异常处理以及优化方案
本文主要介绍Vue SSR(vue服务端渲染)的应用场景,开发中容易遇到的一些问题,提升ssr性能的方法,以及ssr的安全性问题. SSR的应用场景 1.SEO需求 SEO(Search Engine ...
- Vue(SPA) WebPack模块化打包、SEO优化(Vue SSR服务端同构直出)、全浏览器兼容完整解决方案
白驹过隙,时光荏苒 大概去年这个时候写了angular 结合webpack的一套前端方案,今年此时祭出vue2结合webpack的一套前端方案. 明年的这个时候我又是在做什么... 读在最前面: 1. ...
- Vue SSR的渲染性能
一.前言 前端技术年年有新宠,Vue.js 2.0以其轻量级.渐进式.简洁的语法在MVVM框架中脱颖而出,一经推出便很受业界青睐. 为了提高首屏渲染速度 缓存+直出 是必不可少的.在Vue 1× 时代 ...
- 理解vue ssr原理,自己搭建简单的ssr框架
前言 大多数Vue项目要支持SSR应该是为了SEO考虑,毕竟对于WEB应用来说,搜索引擎是一个很大的流量入口.Vue SSR现在已经比较成熟了,但是如果是把一个SPA应用改造成SSR应用,成本还是有些 ...
- vue SSR 部署详解
先用vue cli初始化一个项目吧. 输入命令行开始创建项目: vue create my-vue-ssr 记得不要选PWA,不知为何加了这个玩意儿就报错. 后续选router模式记得选 histor ...
- vue ssr 项目改造经历
vue ssr 项目改造经历 由于工作项目需求,需要将原有的项目改造,vue ssr 没有用到nuxt,因为vue ssr更利于seo,没办法,一个小白的改造经历, 首先说明一下,小白可以借鉴,高手也 ...
随机推荐
- Android近场通信---NFC基础(三)(转)
转自 http://blog.csdn.net/think_soft/article/details/8180203 过滤NFC的Intent 要在你想要处理被扫描到的NFC标签时启动你的应用程序,可 ...
- git 版本控制(一)
新建代码库repository 1.在当前目录新建一个git代码库 git init git init projectname 2.下载一个项目,如果已经有了远端的代码,则可以使用clone下载 gi ...
- flask_context
定义全局的钩子函数 有的时候在处理请求之前和之后,执行某些特定的代码是很有用的,这就用到了请求钩子 例如在请求之前创建数据库连接或者redis连接:或者是系统里面用户请求处理之前先验证用户的身份,是否 ...
- Elasticsearch之安装
elasticsearch需要java8以上支持 java -version 二进制文件下载 www.elastic.co/downloads tar安装示例 1.下载tar文件 curl -L -O ...
- mysql 维护添加远程主机访问
https://www.cnblogs.com/JNUX/p/6936548.html
- [转]Formatting the detail section to display multiple columns (水晶报表 rpt 一页多列)
本文转自:http://www.bofocus.com/formatting-the-detail-section-to-display-multiple-columns/ Format the de ...
- asp.net 图表
感谢csdn深南大道,文章转自http://blog.csdn.net/smartsmile2012/article/details/17356673 前台代码 <div> <asp ...
- SpringBoot 2.x (10):整合Redis
Redis部署到阿里云: 下载redis源码,编译,允许远程访问的配置 阿里云安全组设置: SSH连过去: wget http://download.redis.io/releases/redis-4 ...
- Apache is running a threaded MPM, but your PHP module is not compiled to be threadsafe. you need to recompile php. pre-configuration failed
手动配置想要组合版本的wamp环境时,在服务器上直接下载的几个安装包怎么都组合安装不成功,纠结很久,终于找到原因.配置apache支持php后apache一直无法成功启动.后来发现php是nts的版本 ...
- jQuery1.6.1源码分析系列(作者:nuysoft/高云)
作者:nuysoft/高云 QQ:47214707 Email:nuysoft@gmail.com jQuery源码分析(版本1.6.1) 00 前言开光 01 总体架构 02 正则表达式-RegEx ...