node+vue+MongoDB全棧開發(遇到的坑)

大家好,我是Counterrr。

(ps:有一段時間沒更新博客了,因爲工作實在是太忙了,公司前端就我一人,搞了挺多項目,近期還搞了美國疫情分期網頁主要用了Vue + ElementUi + echarts + Bmap,有點跑題了今天不講這個)

一、今天主要說說node+vue+MongoDB的項目初始化遇到的幾個坑。
主要有A端(admin端管理員端 )+ C端(customer用戶端) + 後臺(node的後端框架express);
在用mongoose連接數據庫的時候主要遇到兩個坑,兩個非常簡單的坑都是自己粗心造成的,今天記錄一下報錯的信息:

  1. 前臺發送ajax請求一直請求不成功,返回的信息data對象下,code字段-2,並且顯示信息:“ECONNREFUSED”,就是數據庫一直連接不上。找了一晚上錯誤,結果發現在後臺入口index.js裏面沒有引入數據連接的js文件。(ps:被自己蠢到家了。)
  2. 在入口index.js文件中引入後,後端終端又報錯了,具體報錯如下:UnhandledPromiseRejectionWarning: MongoParseError: No hostname or hostnames provided in connection string。 主要原因在mongoose.connect()函數中連接數據庫加了空格

OK,簡單記錄下。

二、記錄下使用elementUi,el-menu上router屬性,el-menu-item屬性index二級路由跳轉的坑。在router下index.js路由配置中,在主路由 / 下記錄兩個二級子路由,children: [ { path: '/categories/create', component: CategoryEdit }, { path: '/categories/list', component: CategoryList } ] 在頁面去點擊時,第一次會正確解析,第二次點擊時,會出現這種怪異現象:/categories/categories/create多拼接了一個字段,糾其原因,在el-menu-item屬性index下不能這樣寫index="categories/create" 改成index="/categories/create"這樣就能在根路徑去請求。問題解決。

三、記錄下在使用node的express時,管理員驗證這塊,在express後端代碼中加入,jwt即jsonwebtoken驗證管理員登錄模塊時,再使用到element-ui組件庫中el-upload組件時,圖片上傳報錯,401,unauthorization錯誤。在el-upload組件上加入headers屬性,並且將本地localStorage的token加入到請求頭部Authorization中,死活不成,在控制檯查看請求報文,也是存在authrization字段,注意出現authrization而不是authorization,所以說是我在設置字段時少寫了一個o,總結:不要太相信自己的英文水平,否則會付出玩一個小時的代價 [笑哭] [笑哭] [笑哭]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章