最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

使用Node搭建reactSSR服務(wù)端渲染架構(gòu)

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:08:59
文檔

使用Node搭建reactSSR服務(wù)端渲染架構(gòu)

使用Node搭建reactSSR服務(wù)端渲染架構(gòu):如題;本文所講架構(gòu)主要用到技術(shù)棧有: Node, Express, React, Mobx, webpack4, ES6, ES7, axios, ejs, log4js, scss,echarts,ant desige SSR的概念 Server Slide Rendering,縮寫為 ssr,即服務(wù)器端渲染,因?yàn)槭呛蠖顺錾恚?/div>
推薦度:
導(dǎo)讀使用Node搭建reactSSR服務(wù)端渲染架構(gòu):如題;本文所講架構(gòu)主要用到技術(shù)棧有: Node, Express, React, Mobx, webpack4, ES6, ES7, axios, ejs, log4js, scss,echarts,ant desige SSR的概念 Server Slide Rendering,縮寫為 ssr,即服務(wù)器端渲染,因?yàn)槭呛蠖顺錾恚?/div>

如題;本文所講架構(gòu)主要用到技術(shù)棧有: Node, Express, React, Mobx, webpack4, ES6, ES7, axios, ejs,  log4js, scss,echarts,ant desige

SSR的概念

Server Slide Rendering,縮寫為 ssr,即服務(wù)器端渲染,因?yàn)槭呛蠖顺錾?,所以其?shí)早就明白是怎么回事,只是沒這個(gè)具體名詞的概念罷了,這個(gè)詞被頻繁提起也是拜近年來前端飛速發(fā)展所賜,主要針對(duì) SPA應(yīng)用,目的大概有以下幾個(gè):

解決單頁面應(yīng)用的 SEO

單頁應(yīng)用頁面大部分主要的 HTML并不是服務(wù)器返回,服務(wù)器只是返回一大串的 腳本,頁面上看到的大部分內(nèi)容都是由腳本生成,對(duì)于一般網(wǎng)站影響不大,但是對(duì)于一些依賴搜索引擎帶來流量的網(wǎng)站來說則是致命的,搜索引擎無法抓取頁面相關(guān)內(nèi)容,也就是用戶搜不到此網(wǎng)站的相關(guān)信息,自然也就無流量可言。

解決渲染白屏

因?yàn)轫撁?HTML由服務(wù)器端返回的腳本生成,一般來說這種腳本的體積都不會(huì)太小,客戶端下載需要時(shí)間,瀏覽器解析以生成頁面元素也需要時(shí)間,這必然會(huì)導(dǎo)致頁面的顯示速度比傳統(tǒng)服務(wù)器端渲染得要慢,很容易出現(xiàn)首頁白屏的情況,甚至如果瀏覽器禁用了 JS,那么將直接導(dǎo)致頁面連基本的元素都看不到。使用Express初始化Node服務(wù)

開始本項(xiàng)目首先你的電腦要安裝有node,npm這個(gè)沒什么好說的。其次本次Node服務(wù)用的框架是express;所以要安裝: express-generator

然后使用express your-project初始化你的express項(xiàng)目

npm install express-generator -g
//執(zhí)行這條命令全局安裝express-generator,如果你不想全局安裝把-g去掉即可

初始化express項(xiàng)目之后我們開始把react,webpack整合到這個(gè)node服務(wù)上。

初始化React項(xiàng)目并整合webpack

這里整合webpack使用的是webpack4的版本,如果你熟悉vue-cli(vue-cli3之前的版本)的話你應(yīng)該會(huì)知道webpack配置有多少個(gè)文件,這里參考了vue-cli生成的webpack配置。

添加src文件夾

src文件夾下的內(nèi)容都是整個(gè)react的一些核心配置,如請(qǐng)求處理,css樣式,公共組件,路由,頁面,stores全局狀態(tài)數(shù)據(jù)。

配置.babelrc

因?yàn)橛玫紼S6,ES7語法所以要配置.babelrc文件。這個(gè)文件東西不多下面直接貼出代碼

{
 "presets": [["es2015", { "modules": false }], "react", "stage-0"],
 "plugins": [
 "transform-decorators-legacy",
 ["import", { "libraryName": "antd", "style": "css" }],
 "transform-runtime"
 ]
}

修改Node服務(wù)app.js

其實(shí)主要是加上這句:app.use('/', reactSSR); 其就是為了項(xiàng)目啟動(dòng)的時(shí)候開啟熱更新并渲染views中reactSSR.ejs這個(gè)模板引擎文件從而達(dá)到服務(wù)端渲染的目的。

項(xiàng)目結(jié)構(gòu)

這里把項(xiàng)目主要的文件夾結(jié)構(gòu)放到最后。

項(xiàng)目GitHub地址: https://github.com/Uwah/node-react

后期部署上服務(wù)器之后會(huì)找個(gè)時(shí)間更新博客,主要是用到pm2

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

使用Node搭建reactSSR服務(wù)端渲染架構(gòu)

使用Node搭建reactSSR服務(wù)端渲染架構(gòu):如題;本文所講架構(gòu)主要用到技術(shù)棧有: Node, Express, React, Mobx, webpack4, ES6, ES7, axios, ejs, log4js, scss,echarts,ant desige SSR的概念 Server Slide Rendering,縮寫為 ssr,即服務(wù)器端渲染,因?yàn)槭呛蠖顺錾恚?/div>
推薦度:
標(biāo)簽: ssr 服務(wù) 架構(gòu)
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

Top