.

  好程式設計師web前端分享什麼是前端同構渲染,同構渲染指的是前後端都使用了js,首次渲染的時候使用nodejs載入了我們的HTML檔案,用小白的話來說,同構渲染既不屬於後端渲染,也不屬於前端渲染,它是介於二者之間的共有部分。同構渲染的實現其實就是SSR+CSH,他們是通過一份程式碼而實現的。

在這裡提到了前端渲染和後端渲染,他們各自都有自己的優勢吧。前端渲染的優勢包括:可以區域性重新整理、可以實現懶載入技術、可以使用js實現各種炫酷的效果、可以通過cdn伺服器訪問資源、前後端分離開發、學習成本相對較低。後端主要的優勢有:可以很好的解決首屏載入的問題、利於seo的優化。

隨著技術的發展,像Vue和React框架已經能夠實現很好的同構渲染,也就是我們常說的SSR,比如說nuxt.js和next.js。在前端渲染異常普遍的今天,我們為什麼會有同構渲染的技術出現呢?

上面已經介紹到了,同構渲染其實可以解決首屏載入緩慢和SEO的優化問題。

傳統的搜尋引擎通過從 HTML檔案 中抓取我們所需要的資料,這樣的話前端渲染的頁面就無法被抓取到。開發過vue和react專案的開發者都知道,我們常使用的 SPA 會把所有 JS 整體打包,不可忽略的一個問題就是檔案太大,導致渲染前等待很長時間。特別是網速差的時候,讓使用者等待白屏結束並非一個很好的體驗。

服務端渲染可以先將使用的資料渲染成最終 HTML 直接展示,理想情況下能避免白屏問題。但是凡事無絕對,如果一個頁面的資料量過大,那也不可避免的會有等待情況的發生。

說到PHP,JSP的渲染模式,他們都是前端寫完頁面之後交給後端,後端通過模板引擎渲染出來的HTML頁面,字尾名為php或者jsp。通過中的SSR其實原理也是一樣的,只不過多了一層CSH而已,它的實現需要服務端提供一份