緣起
哈嘍大家周二好呀,剛剛經歷過了幾天火車搶票,整個人都不好了,不知道小伙伴對今年的春節是否還一如既往的期待呢,眼看都要春節了,本來也想寫篇2018總結篇,但是怕不免會出現雞湯文的窠臼嫌疑,想想還是算了,這幾天和老李聊起來關於寫博客文章,總感覺這一系列還沒有寫完,或者說還有一些沒有收尾好,眼看就要春節了,周末我也好好的整理整理思路,決定臨時開一個4-6篇的小系列文章 —— 基於Nuxt.js框架的提Bug小項目(命名為 tBug),當然以后會增加更多的功能,這個只是1.0版本,你一定好奇為啥要寫這個呢,請聽我慢慢道來:
目錄
1、Github源地址
前端前台(支持SSR的Nuxt框架,目前還未提交Code,預計春節前全部完成):
https://github.com/anjoy8/Nuxt.tBug
在線地址:http://tibug.neters.club/
前端后台:(一個包含權限管理的 Vue 后台)
https://github.com/anjoy8/Blog.Admin
在線地址:http://vueadmin.neters.club/
后端:(Blog.Core)
https://github.com/anjoy8/Blog.Core
2、文章目錄
持續更新中,預計會有4~6篇(后端接口開發,nuxt初始搭建、調用接口設計頁面、部署服務器):
- 二十五║初探SSR服務端渲染(個人博客二)
- 二十六║Client渲染、Server渲染知多少{補充}
- 二七║ Nuxt 基礎:框架初探
- 二八║ Nuxt 基礎:面向源碼研究Nuxt.js
- 二九║ Nuxt實戰:異步實現數據雙端渲染
- 三十║ Nuxt實戰:動態路由+同構
- 三十一║ Nuxt終篇:基於Vuex的權限驗證探究
👆 上邊的這些較多的是講解 Nuxt 的概念基礎,項目Demo不是很好,只看概念即可,如果只想快速入門 Nuxt.js,只看下邊的即可
寫它的初衷
A、鮮有人會有收集Bug的想法
還記得寫第一篇文章的時候,我就說的是我寫文章是為了推動.net core社區的隊伍壯大,所以主要致力於入門和初級的開發者,寫了16萬字,好像還沒有收到那些大神們的鼓勵,內心是尷尬的,不過沒關系,依舊擋不住我的熱情,現在大家可以翻開各種博客園、簡書、CSDN等等,到處都是如何如何零基礎入門,但是把人帶過來了,又很少有時間和精力去手把手教別人,我承認我也是,只能盡量的幫助每一個小伙伴,提供思路,有一些小伙伴半天甚至一天都卡在了一個小問題上,我就會讓他們把代碼發給我,我幫忙調試,下邊就是我的電腦里收到的群里小伙伴發給我,讓我幫忙調試 BUG 的代碼,我以文件夾的形式存放,都小心翼翼保存着:

而且群里邊,也是都會有一些相同不同的問題出現:

這個時候我就在想,現在不僅很多 Github 上沒有對項目的講解(只有如何使用,沒有如何開發),有講解博文的吧,卻沒有太多精力去照顧那些真正入門的小伙伴,所以我就萌發了一個思路,一個項目,專門給我的這兩個系列收集BUG,當然以后還會有,目前是 NetCore、Vue、DDD這三塊,我的想法是,每一個小伙伴如果遇到了Bug,可以放到系統里,收集起來,當下一個入門的小伙伴也遇到問題的時候,可以在系統里看看,畢竟常見的就那么多,比如:
Swagger如何調試?
.NetCore api 路由重載報錯,為啥?
依賴注入報錯了,怎么調試?
JWT的Token校驗的時候異常?
我在QQ群里已經回答了不下50遍了感覺,所以我就想有這么一個記錄Bug的系統,不僅可以讓新來的小伙伴可以有章可循,還可以平時的時候多翻翻看看,加深一下。
如果你說,Bug嘛還是得讓自己調試,自己調試會了,就會學的更多,沒錯,我剛開始也是這么想的,可是有時候真的是一個小Bug能卡住兩天,那個心情,我也是懂得的,畢竟入門和中高級的思維真的不一樣。
這就是我寫這個系列的目前之一,后來想想如果單獨寫一個MVC,畢竟是很小的一個,三四個頁面的樣子,這么小,真是沒必要。
B、我目前還沒有一個成型的項目
因為只有三四個頁面的顧慮,我遲遲沒有開動,直到這幾天有小伙伴問我,有沒有成型的項目在線上,我雖然有兩個,也在Github上,比如這個 http://123.206.33.109:8077(就是第一個系列的Vue項目),

但是當時只是為了講解知識點,樣式是真的丑陋不堪,我也好幾次拿不出手,所以就想着有一個成型的項目可以展示出來,不僅僅是有數據,還要頁面好看,功能齊全,有授權,有CURD至少,所以就有動力要把這個提上日程了,上邊的顧慮也就是沒有了,那要一個什么樣的框架呢,也一直遲遲沒有定好,直到我想到下邊這個問題。
C、Blog.Core中哪些技術不足
其實這個系列是我的第一個系列《從壹開始前后端分離【 .NETCore2.1 +Vue 2 +AOP+DI】》的補充篇,那既然是補充,肯定會有上一個系列遺漏的問題,那是什么呢,可能還有其他的(比如Docker部署還沒寫),但是Nuxt.js 這一直是我的一塊心病(如果你是一直跟着我的系列教程的,一定知道 Nuxt 是什么框架,不知道的請翻看我的說明文章《二七║ Nuxt 基礎:框架初探》),現在 Nuxt 不僅又有更新了,比較豐富和人性化了,而且我當時開發的很糟糕,還沒有部署和發布。所以既然上邊已經篤定要寫一個這樣的項目了,就索性繼續用 Nuxt.js 框架來寫,我也是天天泡在 Github 上找合適的代碼,很可惜,要么Clone 下來沒辦法運行,要么沒有文章講解,只能自己摸索,正好我就從新開始,一步步寫下來,讓那些入門 Nuxt.js 的小伙伴,能從新建到開發,最后部署,有一定的理解,前天我終於找到了一個好看的博客,是一個開源的項目,不知道作者有沒有看我的文章,我這里幫你宣傳一波,肯定不會抄他的,只是參考了下他的布局,大家可以支持他下,我也把他的地址放到了我博客園公告里了:
作者:Hzy0913 ,Github :https://github.com/Hzy0913/my-blog
我先簡單的設計了下整體布局,以后肯定還會修改的,畢竟這個有點兒簡單的是(已經支持SEO了):

現在前端框架已經確定了,就使用Nuxt.js 了,那后端呢,難道又要新建一個 net core 項目么?不用的,畢竟目前只有兩個表,專題和詳情表,那為啥說不用了呢?
D、還記得Blog.Core項目的Topic表么
相信看這篇文章的,都是從第一個系列跟過來的鐵粉兒,在Model層中,有那么些表,無論是做演示的博客表,還是JWT權限模塊的那幾個用戶、角色、菜單等表,剩下的就是無用的廣告表,和 Topic和TopicDetail表了,你一定很好奇,這一塊一直沒有提到,是干啥的?沒錯!今天終於派上用場,是不是有種寫小說的伏筆一樣(其實這是我之前項目里,用來記錄我寫名著讀后感的表😂),今天就正好拿來提bug了,如果你感覺不合適,可以修改下表名,或者新建兩個表,我就直接使用這兩個了,一個是Bug專題,一個是內容。

好啦,上邊這四個就是我要寫這篇文章的目的與動力,我很希望到時候有很多小伙伴把遇到的BUG放到這里,bug開源也是一種精神,注意隱私就行(其實也沒啥隱私。。)
計划書
因為春節將至,可能很多小伙伴和我一樣比較忙,所以我的1.0版本,就打算很簡單的實現展示和提交功能,目前只支持提交一張bug圖片,作為Logo,等以后人多了,我再買一個大的服務器,到時候可以再在內容里提交圖片。
下邊是我自己的瞎想,可能需要明年一點一點的寫,如果有想一起開發的,可以一起交流:
版本1.0(完成)、發布到服務,每一個用戶都可以提交Bug(因為1.0沒有用戶,所以必須是已經解決的Bug,就是帶有方案的),然后展示,前期肯定沒人用,一般都是我自己提交;
1.1、支持將所有Bug和解決方法導出功能(txt、tsv、Json等各種格式);
1.2、配置域名,支持 HTTPS 安全協議;
1.5、引入用戶注冊功能,用戶登錄后所發布的自己的文章,作者可對其進行CURD;
1.9、增加用戶評論功能,可以留下自己的聯系方式,方便提問題的人找到回答的人,進行深入交流。
版本2.0、增加后台管理系統,增加審核功能,開始引入權限管理系統(因為是基於Blog.Core的所以是基於JWT權限驗證的,ID4的以后再說)。
版本3.0、開放積分,分享、小程序等功能,引入廣告功能(我自己的瞎想,反正是一個主要的功能。。。)。
未完待續。。。
結語
稀里糊塗的說了這么多,這也是我2019年一直跟進的小項目吧,可能需要閑暇時間慢慢跟進,如果你願意,可以一起為開源事業做貢獻,哪怕是一個提Bug,哪怕是幫助別人解決Bug,都是一種開源精神,一起加油鴨!
致謝
再次感謝我找到的這個Github 樣式模板的作者(如果你看到了請留言,要是不想讓用,可以私信我,不過肯定不一樣的);
再次感謝所有粉絲2018年的幫助和支持;
再次感謝李大爺的鼓勵和支持 [筆芯]。
-- END
