Flutter?Getx中的put和lazyPut函數(shù)使用案例解析
案發(fā)現(xiàn)場
在main.dart的runApp函數(shù)入口通過AppControllerBinding中的Get.lazyPut懶加載綁定了一個全局的controller,在A界面通過Get.find(),可以拿到這個controller,我退出A界面(還沒退出APP)controller就回調了onClose函數(shù),我再次進入商品列表界面
提示我:
"AppController" not found. You need to call "Get.put(AppController())" or "Get.lazyPut(()=>AppController())"
這個時候我很奇怪,既然是通過runApp入口綁定的全局的Controller,為什么在A界面第一次使用的時候可以獲取到,退出來就銷毀了,在進入A界面就直接報錯了呢?
這就要來細讀一下Getx中put和lazyPut這兩個函數(shù)以及他們的參數(shù)。
Get.put
Get.put<AppController>(AppController(),permanent: false);
核心是第二個參數(shù)permanent,默認是false
當為false的時候,當在A視圖中put,退出A視圖就會銷毀,當在B視圖在使用的時候,就會報錯
"AppController" not found. You need to call "Get.put(AppController())" or "Get.lazyPut(()=>AppController())"
當為true的時候,一旦put之后,就不會銷毀,其他視圖也可以繼續(xù)使用
Get.lazyPut
Get.lazyPut<AppController>(() => AppController(),fenix: true);
到了lazyPut函數(shù)又不一樣了,因為參數(shù)變成fenix了,并不是上面的permanent,而fenix的意思也有很大的區(qū)別。我們容易知道lazyPut是懶加載的,在那個視圖需要的時候,就在哪個視圖初始化,而fenix這個參數(shù)就比較重要。
fenix為false的時候:
第一次進入視圖的時候初始化,退出視圖的時候,銷毀,再次進入該視圖會報錯
"AppController" not found. You need to call "Get.put(AppController())" or "Get.lazyPut(()=>AppController())"
fenix為true的時候:
第一次進入視圖的時候初始化,退出視圖的時候,銷毀,再次進入該視圖重新初始化。
這就是案發(fā)現(xiàn)場的原因?。。。?!
以上就是Flutter Getx中的put和lazyPut函數(shù)使用案例解析的詳細內容,更多關于Flutter Getx函數(shù)put lazyPut的資料請關注腳本之家其它相關文章!
相關文章
Android App中制作仿MIUI的Tab切換效果的實例分享
這篇文章主要介紹了Android App中制作仿MIUI的Tab切換效果的實例分享,實現(xiàn)具有跟隨手指滾動而滾動功能的ViewPagerIndicator,需要的朋友可以參考下2016-04-04Android的SurfaceView和TextureView介紹及使用示例
SurfaceView 是一種用于直接將圖形繪制到屏幕的Android組件,下面給大家分享SurfaceView使用示例,它展示了如何在 Android 應用中創(chuàng)建并使用,感興趣的朋友一起看看吧2024-12-12Android開發(fā)調用WebService的方法示例
這篇文章主要介紹了Android開發(fā)調用WebService的方法,結合實例形式較為詳細的分析了Android調用WebService的原理、實現(xiàn)方法與相關操作注意事項,需要的朋友可以參考下2017-10-10AndroidStudio上傳本地項目到碼云的方法步驟(OSChina)
這篇文章主要介紹了AndroidStudio上傳本地項目到碼云的方法步驟(OSChina),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04Android獲取SDcard目錄及創(chuàng)建文件夾的方法
今天小編就為大家分享一篇Android獲取SDcard目錄及創(chuàng)建文件夾的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08Android中實現(xiàn)OkHttp上傳文件到服務器并帶進度
本篇文章主要介紹了Android中實現(xiàn)OkHttp上傳文件到服務器并帶進度,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07