1、服務(wù)端渲染和客戶端渲染各自指什么?有什么特點(diǎn)?
SSR:服務(wù)端渲染網(wǎng)頁內(nèi)容,由服務(wù)端生成,首屏?xí)r間短,有利于搜索引擎優(yōu)化;
CSR:客戶端渲染,vue、react框架渲染方式,SPA都是客戶端渲染,首屏渲染時(shí)間長不利于搜索引擎優(yōu)化

SSR和CSR對(duì)比

服務(wù)端渲染示例
服務(wù)端渲染返回的是字符串,其中的事件是無法生效的,如下圖所示,點(diǎn)擊按鈕,alert不會(huì)生效。vue的其他特性也沒有了,比如響應(yīng)式更新也不生效。

image.png
2、同構(gòu)的本質(zhì)是什么?
為了解決事件無法生效的問題,引入同構(gòu)的概念。
一份vue代碼在服務(wù)端渲染一遍,然后在客戶再渲染一遍。服務(wù)端渲染解決了首屏顯示快,客戶端渲染是需要把事件、響應(yīng)式特性等vue經(jīng)典的特性都綁回去
我們既可以使用vue的開發(fā)模式又可以享受種渲染方式的優(yōu)勢(shì)
3、服務(wù)端渲染Nuxt框架中異步數(shù)據(jù)訪問asyncData
Nuxt.js 是基于Vue.js庫、Node.js和功能強(qiáng)大的開發(fā)工具的直觀Web框架,可以創(chuàng)建高性能和生產(chǎn)級(jí)別的全棧Web應(yīng)用程序和網(wǎng)站。

image.png