Flutter中setState為變量賦值,變量控制的組件卻不刷新


背景是項目需要做一個評價組件,在評價完之后組件由可編輯狀態變為不可編輯/展示評分狀態。

 

 可以看到觸發方法之后變量是成功賦值的,但是對應的組件是完全沒有進行改變的,附上其中一個按鈕的代碼

 

 糾結了很久,后來發現當初為了組件在固定的順序出現,是通過聲明一個變量,然后對該變量賦值一個組件,從而進行渲染的

 

 

 

個人認為,組件變量的賦值其實相當於對其賦值了一個無狀態組件,最開始觸發方法,也是在主函數中對所有的組件進行刷新。但是這一過程並不包括聲明為變量的組件。

要想在刷新的時候使組件變量更新,其實就是跟普通的變量一樣,給其賦予一個新的值就可以了。

 


免責聲明!

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



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