一、前言
我們提供的服務(wù)有:網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、武進(jìn)ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的武進(jìn)網(wǎng)站制作公司
Flutter開發(fā),就需要對(duì)各種狀態(tài)的管理,就是在請(qǐng)求數(shù)據(jù)的時(shí)候需要實(shí)時(shí)變化,各種交互變化等,在沒有使用GetX之前使用Provider,用Provider的時(shí)候覺得真香,挺方便的,需要刷新的時(shí)候直接 notifyListeners(); 用了GetX之后覺得Provider太繁瑣了。這邊介紹下GetX的使用以及常用的方法。
二、 GetX
GetX 是 Flutter 上的一個(gè)輕量且強(qiáng)大的解決方案:高性能的狀態(tài)管理、智能的依賴注入和便捷的路由管理。
1、相關(guān)優(yōu)勢(shì):
三、使用
1、第一步 引入get
2、第二步
修改入口、配置路由
3、路由
Routes類
Pages類
4、狀態(tài)管理
我一般一個(gè)page對(duì)應(yīng)一個(gè)controller, controller來(lái)處理邏輯,控制page.
簡(jiǎn)單使用
5、依賴注入
依賴注入也是我喜歡的,可以減少很多工作。
第一步
第二步
6、跨頁(yè)面交互
7、黑暗模式
可以參考前期寫的博客。 黑暗模式的適配
dio的使用方式有很多,我就只選出我認(rèn)為最好用的api方式做下記錄,把get成post就是post請(qǐng)求了,網(wǎng)絡(luò)請(qǐng)求都用的百度的api,實(shí)際上的response沒有任何意義,所以只要打印出response有值即可。
1.最簡(jiǎn)單的請(qǐng)求例子,網(wǎng)絡(luò)請(qǐng)求是異步的所以用async await
2.帶有參數(shù)的get請(qǐng)求
3.自定義請(qǐng)求頭,可定義的請(qǐng)求頭dart已經(jīng)為我們提供了專門的類存了對(duì)應(yīng)的字符,引入以下庫(kù),就能使用 HttpHeaders
一般我們請(qǐng)求接收到的數(shù)據(jù)是json格式,如'accept: application/json',我們就可以這樣自定義請(qǐng)求頭
4.使用Baseoptions
其他詳細(xì)參數(shù)設(shè)置參考如下:
平時(shí)我們?cè)陂_發(fā)flutter過程中,在執(zhí)行flutter packages get命令之后,如果運(yùn)氣不好的,命令沒有執(zhí)行成功的話,我們就會(huì)遇到這個(gè)錯(cuò)誤提示:
然后你會(huì)發(fā)現(xiàn)會(huì)發(fā)現(xiàn)在任何地方執(zhí)行flutter命令,都會(huì)遇到這個(gè)錯(cuò)誤;
一般情況下,你會(huì)關(guān)閉項(xiàng)目,重啟IDE,但這些操作都無(wú)效,除非你重啟電腦。