摘要:使用搭建簡(jiǎn)單博客自己之前學(xué)習(xí)的時(shí)候只是跟著教程走了一遍,粗略的了解了一些概念。最近想搭建一個(gè)博客程序,實(shí)際演練一下。整體思路如果要搭建一個(gè)完整的博客的話,要做很多的工作。拆分好組件復(fù)用起來(lái)頁(yè)比較簡(jiǎn)單。所以就是使用了一個(gè)全局的對(duì)象去管理數(shù)據(jù)。
使用react搭建簡(jiǎn)單博客
自己之前學(xué)習(xí)react的時(shí)候只是跟著教程走了一遍,粗略的了解了一些概念。什么virtual-dom,單向數(shù)據(jù)流之類(lèi)的。但是一致缺乏深入的實(shí)踐。最近想搭建一個(gè)博客程序,實(shí)際演練一下。
整體思路如果要搭建一個(gè)完整的博客的話,要做很多的工作。數(shù)據(jù)存儲(chǔ)和解析、圖片的保存等等。在瀏覽react china論壇的時(shí)候,看到一種利用github issue作為數(shù)據(jù)源的方式。覺(jué)得這種方式
很實(shí)用,主要時(shí)解決了后端存儲(chǔ)問(wèn)題。前端只需要調(diào)用api獲取數(shù)據(jù),渲染數(shù)據(jù)就好了。
程序初始化的時(shí)候,會(huì)請(qǐng)求github的issues接口,數(shù)據(jù)請(qǐng)求完后,再初始化程序。
blog結(jié)構(gòu)項(xiàng)目是利用create-react-app搭建的,隱藏了很多配置,只需要寫(xiě)好業(yè)務(wù)代碼。整個(gè)blog的框架比較簡(jiǎn)單,只有兩個(gè)模塊:首頁(yè)和歸檔。主題是仿照hexo主題hexo-theme-apollo。
markdown渲染使用了ReactMarkdown。整個(gè)架構(gòu)比較簡(jiǎn)單,拆分好邏輯之后,基本上就是拼接各個(gè)component了。拆分好組件、復(fù)用起來(lái)頁(yè)比較簡(jiǎn)單。項(xiàng)目結(jié)構(gòu)如下:
blog --src --component --header --footer --article --title --time --... --view --index.js --app.js
使用react,感受最深的是component的拆分。比如一個(gè)Article,要不要拆分出title和Body兩個(gè)組件,組件如何復(fù)用等等。拆分好component之后,剩下的工作就是針對(duì)各個(gè)頁(yè)面
拼接component了。
在考慮要不要使用redux或者mobx時(shí),嘗試了一下,感覺(jué)太繁瑣。這個(gè)blog項(xiàng)目的結(jié)構(gòu)也比較簡(jiǎn)單,沒(méi)有復(fù)雜交互。所以就是使用了一個(gè)全局的對(duì)象去管理數(shù)據(jù)。
不足首先是github的issue接口是限制訪問(wèn)的,好像是60/h/ip,如果想要提高接口限制,就需要登錄授權(quán),而登錄授權(quán)需要把token或者帳戶密碼放在前端代碼里,這樣做不安全。
所以現(xiàn)在可能會(huì)出現(xiàn)請(qǐng)求失敗的情況。而且github的issue是一次將所有數(shù)據(jù)返回的,如果博客內(nèi)容過(guò)長(zhǎng)的話,返回速度很慢。我測(cè)試了一下,請(qǐng)求3個(gè)比較長(zhǎng)的issue,需要3s左右。
這在體驗(yàn)上太不好了。后面有精力的話,可能會(huì)自己搭建一個(gè)后臺(tái)去解決。
其次是樣式還不太美觀,很多細(xì)節(jié)沒(méi)有處理好,移動(dòng)端也沒(méi)有適配
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/81841.html
摘要:在的的配置中添加自定義主題由腳手架和官網(wǎng)介紹,我們已經(jīng)自己配置并新建好了主題文件。單頁(yè)面博客從前端到后端環(huán)境搭建單頁(yè)面博客從前端到后端基于搭建博客前后臺(tái)界面單頁(yè)面博客從前端到后端基于和的權(quán)限驗(yàn)證與的設(shè)計(jì) 在上篇文章我們已經(jīng)搭建好了基礎(chǔ)的開(kāi)發(fā)環(huán)境,接下來(lái)會(huì)介紹如何引入 DVA 和 ANTD ,以及在引入過(guò)程中需要注意的問(wèn)題。這里只會(huì)詳細(xì)的書(shū)寫(xiě)部分組件,其他的組件都是大同小異。你可以在 g...
摘要:一個(gè)中使用的。比如在項(xiàng)目中的引入它們?cè)谥屑尤胍韵麓a修改項(xiàng)目中的后記完結(jié)撒花本文簡(jiǎn)單研究了一下如何搭建解決方案,如有錯(cuò)誤歡迎指出。 create-react-app搭建vw-layout解決方案 前言:我第一次接觸到vw適配移動(dòng)端的方案是在大漠先生的博客里(如何在Vue項(xiàng)目中使用vw實(shí)現(xiàn)移動(dòng)端適配),強(qiáng)烈建議沒(méi)看過(guò)的朋友先去看一下這篇博客。vw解決方案早有耳聞,我也很想上手嘗試一下,所...
摘要:最近在學(xué),準(zhǔn)備配合搭個(gè)博客,找了很多富文本編輯器,都不是很適合用,后來(lái)看到一篇搭建博客的文章,里面使用的地址,完全就符合我的想法啊,界面簡(jiǎn)潔大方還有預(yù)覽功能。 最近在學(xué)nodejs,準(zhǔn)備配合react+mongodb搭個(gè)博客,找了很多富文本編輯器,都不是很適合react用,后來(lái)看到一篇vue+node搭建博客的文章,里面使用的simplemde(github地址),完全就符合我的想法啊...
摘要:希望幫助更多的前端愛(ài)好者學(xué)習(xí)。前端開(kāi)發(fā)者指南作者科迪林黎,由前端大師傾情贊助。翻譯最佳實(shí)踐譯者張捷滬江前端開(kāi)發(fā)工程師當(dāng)你問(wèn)起有關(guān)與時(shí),老司機(jī)們首先就會(huì)告訴你其實(shí)是個(gè)沒(méi)有網(wǎng)絡(luò)請(qǐng)求功能的庫(kù)。 前端基礎(chǔ)面試題(JS部分) 前端基礎(chǔ)面試題(JS部分) 學(xué)習(xí) React.js 比你想象的要簡(jiǎn)單 原文地址:Learning React.js is easier than you think 原文作...
摘要:說(shuō)到底,當(dāng)自己獨(dú)自開(kāi)發(fā)從搭建開(kāi)發(fā)環(huán)境,到前端的每一個(gè)組件,到動(dòng)作交互,再到和后端的數(shù)據(jù)交互,難免遇到不少問(wèn)題。單頁(yè)面博客從前端到后端基于和的權(quán)限驗(yàn)證與的設(shè)計(jì)引入來(lái)實(shí)現(xiàn)富文本編輯器是開(kāi)源的用于構(gòu)建富文本編輯器的框架。 不會(huì)后端的前端,不會(huì)寫(xiě)單頁(yè)面應(yīng)用... 單頁(yè)面應(yīng)用的概念已經(jīng)被提出很長(zhǎng)時(shí)間了,無(wú)論是基于 vue, angular 還是 react,相信大家或是耳濡目染,或是設(shè)身處地都有...
閱讀 3028·2021-09-08 10:43
閱讀 1031·2019-08-30 15:53
閱讀 964·2019-08-30 13:51
閱讀 836·2019-08-29 14:03
閱讀 796·2019-08-26 18:35
閱讀 1229·2019-08-26 13:38
閱讀 1580·2019-08-26 10:34
閱讀 3497·2019-08-26 10:21