van-collapse用在van-popup里面默認第一次顯示面板內容是關閉狀態無法更改


問題描述

技術:vantweapp的ui組件庫,小程序開發工具

場景:實現點擊按鈕彈出popup抽屜,在抽屜里有collapse伸縮面板,默認第一個伸縮item為展開狀態,顯示第一個伸縮item里的數據

問題:第一次顯示時,雖然第一個是展開狀態,但由於高度是0,就看不到里面的數據,點擊收起再點擊展開后才能看到數據。

正確情況:

 

錯誤情況

 

 

 

 

 

 問題原因:

瀏覽了有贊github上的issue,發現有一個和我相同情況的,原因如下

發現除了popup下collapse的初始化加載有問題外,tab也有類似問題,根本原因在於popup里的組件初始化時會獲取當前頁面作為style的參數,但是在內部無法獲取到導致參數為0等等。

從下圖的頁面元素中可以看出,數據是有的,但是style樣式中給view的height設置了0,導致看不到數據。給height設置為auto能看到數據。

 

 

解決方案:

用wx:if無法解決這個問題,至少大部分情況下第一次加載時無法顯示數據

最后只能根據問題原因從collapse的源碼入手

 

 把height參數在控制台上輸出發現值是0。

最終把源碼加了一句 假如為0就轉換為auto,這樣才算大功告成了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM