uniapp之那些年踩過的坑

蓮笛liandi發表於2020-12-04


前言

uni-app就有點像是vue和小程式的結合,但是剛接觸的時候踩過的坑實在是數不勝數,還老是搞不清一些語法(vue?小程式?傻傻分不清楚),等等等


這裡我把一些坑列舉出來了?

一、渲染資料檢視不更新問題

之前寫一個uni-app的專案,要求動態渲染分類列表資料,由於有一個資料延遲載入的效果,我用了一個大物件包住陣列的方式然後迴圈渲染,結果更新不更新,要到另一個載入的頁面觸發事件後,之前的效果才出現

這裡有兩點:

  1. 使用this. s e t ( o b j , k e y , 值 ) 或 者 t h i s . set(obj,key,值)或者this. set(obj,key,)this.set(array,index,值),像是處理vue底層監聽不到資料變化的解決方式
  2. 要用資料巢狀陣列,而不是物件包陣列,這裡不太理解,一般用第一步就可以解決了,如果不行的話就給他轉成陣列的形式(可能陣列更能被監聽吧!)

二、外掛的使用

剛開始使用uni-app時,被五花八門的外掛元件迷花了眼,外掛商城的元件挺多,但是bug也多,多是別人寫的還沒有完善好,最好使用官方提供的,和自己寫功能,效率和維護都要好得多

三、關於第三方登入

在第三方登入設定時,一定要先把相關的配置給配置好,不然就會報各種錯

this code is a mock one啥的

ps:在manifest.json資料夾中配置

四、關於請求介面報錯

1.一般報400的錯,說bad request直接找你的介面路徑,要不你就找網路準沒錯了

2.關於非法token,請求資料時,把token放在請求頭裡就可以了

五、關於一些語法坑

  1. v-if、src中的""裡面不要用{{}}
  2. 關於this指向問題,一定要合理使用箭頭函式,超好用
  3. js中有時在uni-app裡,語法是很嚴謹的,不能有“;”號

六、關於樣式設定的問題

樣式的問題真的都是本人的辛酸淚啊~,由於uni-app要使用很多封裝好的元件和外掛,所以樣式是很難設定的

  1. 關於寬高:像是在swiper元件裡,你發現百分比的高度設定完全不起作用,很多時候都要用絕對的設定,比如100rpx。必須設死,否則無效
  2. 關於樣式優先順序:很多元件自帶了樣式,你想改改不掉。這時就要一直嘗試往他的子級節點找直到找到最小的。最好的辦法是給他設一個class名或者id名, 再根據class名來設定樣式,基本上屢試不爽。或者使用 !important

總結

這裡只是一部分的bug,uni-app就像是一個超相容的容器,能自動編譯出各種型別的檔案。vue的語法,小程式的結構,很好上手的,大家加油哦!

相關文章