寫小程式的一些小坑

来源:https://www.cnblogs.com/yueqian-jmy/archive/2018/12/02/10052936.html
-Advertisement-
Play Games

1.關於數據綁定的問題 小程式更新data後只是把數據的值更新,不會刷新頁面,比如滑動的列表不會回到頂部,導致使用swiper有個小bug: 就是swiper的數據是後臺請求的,可通過切換tab標簽動態獲取,如果在切換之前swiper處在第三張或者更多(比將要點擊的tab下的swiper多),那切換 ...


1.關於數據綁定的問題

  小程式更新data後只是把數據的值更新,不會刷新頁面,比如滑動的列表不會回到頂部,導致使用swiper有個小bug:

    就是swiper的數據是後臺請求的,可通過切換tab標簽動態獲取,如果在切換之前swiper處在第三張或者更多(比將要點擊的tab下的swiper多),那切換後swiper會是空白,解決辦法是,每次切換要手動初始化swiper的current    屬性,使其停留在第一張。

2.關於生命周期的問題

  生命周期函數不要寫成箭頭函數,否則this會取不到

   切換底部導航時頁面不刷新問題,可以用onShow函數掉一次介面重新獲取數據解決,或者寫一個下拉刷新

3.圖片預覽問題

  ios沒有問題,安卓會黑屏,原因是預覽的圖片必須是http或https開頭的url,相對路徑會黑屏

4.背景圖片不顯示的問題

   這應該是小程式的bug,解決方法:

   1. 將背景圖片轉成base64   2.將圖片放到伺服器,使用url顯示

5.關於picker組件

   1. 觸發彈窗時一定要點擊在內容上才可觸發,點擊空白處無效,這個解決看具體需求,比如加個預設值之類的

   2. 安卓和ios的樣式不一樣,如果對這個有要求建議使用第三方組件(如:有贊)

6. 關於post請求

  如果要傳請求參數,header中要寫這個 'content-type': 'application/x-www-form-urlencoded',官方文檔說的 'content-type': 'application/json' 這個,貌似不管用

7. 小程式沒有過濾器

  可以用wxs解決,但是要處理傳入的value undefined的時候,否則會報錯,因為這個方法執行的快一些,數據還沒有傳過來,當數據傳來後又執行一次,第一次很可能undefined

8. 關於小程式碼識別的問題

      如果二維碼識別的是小程式通過 navigate 跳轉後的子頁面,進入小程式後將回不到首頁,因為小程式會認為這是首頁,如果有可以回到首頁的需求,我的解決辦法是,識別後進入首頁根據scene參數進行子頁跳轉

 

暫時就想到這麼多,如果遇到問題再補充

  


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 聲明 本系列文章內容全部梳理自以下幾個來源: 《JavaScript權威指南》 "MDN web docs" "Github:smyhvae/web" "Github:goddyZhao/Translation/JavaScript" 作為一個前端小白,入門跟著這幾個來源學習,感謝作者的分享,在其基 ...
  • 什麼是作用域:瀏覽器給js的生存環境叫作用域。 什麼是變數提升: Js代碼執行前,瀏覽器會給一個全局作用域window Window分兩個模塊一個是存儲模塊一個是執行模塊 存儲模塊找到所有的var和function 關鍵字給這些變數添加記憶體地址 執行模塊,代碼從上到下執行,遇到變數就會去存儲模塊查找 ...
  • 1.事件 瀏覽器客戶端上客戶觸發的行為都稱為事件 所有的事件都是天生自帶的,不需要我們去綁定,只需要我們去觸發。 通過 obj.事件名=function(){} 事件名:onmouseover 滑鼠懸浮 onmouseout 滑鼠移除 onmousedown滑鼠按下 onmouseup 滑鼠抬起 o ...
  • 元素的屬性 div.attributes 是所有標簽屬性構成的數據集合 div.classList 是所有class名構成的數組集合 在classList的原型鏈上看以看到add()和remove() 1.client系列 (1) clientWidth/clientHeight 是我們設置的寬和高 ...
  • @[toc] .val()實例方法的三種用法 1. $('xxx').val() : 獲取匹配的元素集合中第一個元素的當前value屬性值(property) 2. $('xxx').val(value) : 設置匹配的元素集合中每個元素的value屬性值(property) 3. $('xxx') ...
  • 在列表展示中,經常會使用卡片的內容展示形式,為了美觀,常常要求各卡片間的間隙是一致的。 卡片內容不一樣可能高度不等,但一般來說為了整體的一致性,會限制每個卡片的寬高都相等。 本文就基於寬高一致的多個卡片,在不同屏幕大小下,每行卡片數量可能有調整,考量如何實現等間隙的佈局。 點我預覽 放置一張張卡片項 ...
  • 希望能自己獨立的寫出這個小冊。在博客園的第一篇博文,還是寫關於技術方面的,但願語言組織好點。 自己也不算是初級小白了,畢竟學習前端知識很長一段時間了。兩個月前也嘗試寫過一些封裝,但對封裝質量並不滿意,後來讀了一本書,叫《JavaScript設計模式與開發實踐》,從中受益很多。作者是我們國內的騰訊前端 ...
  • 首先,回顧下上篇博文中 "js基礎梳理 究竟什麼是執行上下文棧(執行棧),執行上下文(可執行代碼)?" 的執行上下文的生命周期: 3.執行上下文的生命周期 3.1 創建階段 生成變數對象(Variable object, VO) 建立作用域鏈(Scope chain) 確定this指向 3.2 執行 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...