前面三篇文章我們將vue-ssr的前端代碼做了詳細(xì)的分析,今天我們一起來看看vue-ssr基于express的服務(wù)端代碼。
在vue-ssr的官方文檔中有這么一段話
雖然官方文檔說明vue-ssr需要在nodeJs運(yùn)行環(huán)境寡键,但這不是必須的祖娘,官方也提供了其他語(yǔ)言下的渲染方法徐绑,這里我們不做深究承冰,作為一個(gè)前端程序員锭魔,我們更喜歡用nodeJs來解決前端的問題换途。廢話不多說劲厌,看一下我們今天的重點(diǎn)膛薛,老規(guī)矩先瞅瞅長(zhǎng)啥樣:
我們先來說說server.js到底做了哪些事情:
1.開放dist文件夾
2.按照路由緩存
3.渲染路由組件
首先說一下為什么要開放dist文件夾,我們?cè)谏弦黄恼吕锩嫣岬讲贡牵琩ist文件夾是我們最終的打包文件夾哄啄,開放它的目的是為了客戶端頁(yè)面可以訪問到打包后的靜態(tài)文件(圖片,js风范,css),接下來我們創(chuàng)建了一個(gè)randerer對(duì)象咨跌,可以看到,打包后的vue-ssr-server-bundle.json和vue-ssr-client-mainfest.json文件在初始化的時(shí)候傳進(jìn)了randerer對(duì)象硼婿,還有一個(gè)模板對(duì)象锌半,這個(gè)模板對(duì)象就是我們服務(wù)端返回的頁(yè)面字符串渲染的模板,在第一篇中我們的目錄里面可以看到加酵。按照路由緩存其實(shí)是將服務(wù)端渲染結(jié)果保留以便于加快相應(yīng)的策略拳喻。到了第三步就是利用renderer對(duì)象去渲染我們?cè)L問的路由對(duì)應(yīng)的組件然后返回給客戶端,這就是完整的服務(wù)端的代碼猪腕。
到此為止所有關(guān)于vue-ssr的介紹就完了冗澈,當(dāng)然還有一些關(guān)于模板,緩存以及客戶端數(shù)據(jù)預(yù)取的其他方案這里沒有介紹到陋葡,大家有興趣的可以去官網(wǎng)了解亚亲。附上官網(wǎng)鏈接
vue-ssr官方文檔