最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flutter?Widget之FutureBuilder使用示例詳解

 更新時間:2022年11月30日 14:54:12   作者:程序員界的小學(xué)生  
這篇文章主要為大家介紹了Flutter?Widget之FutureBuilder使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

正文

本質(zhì)上Flutter和Dart是異步的,Dart是Futures使你能夠管理IO而不用擔(dān)心線程或死鎖。

例如,從應(yīng)用程序外部加載數(shù)據(jù)需要時間,而Futures允許Dart先處理其他任務(wù)直到請求的數(shù)據(jù)可用。

涉及Future時 如何構(gòu)建Flutter小部件

輸入FutureBuilder

輸入FutureBuilder,這是處理Futures的構(gòu)造器

FutureBuilder(
    future: _data,
    builder: _myBuilderFunction,
)

FutureBuilder讓你輕松確定Future的當(dāng)前狀態(tài)并選擇在數(shù)據(jù)加載時和數(shù)據(jù)可用時顯示的內(nèi)容。

首先給FutureBuilder一個Future,但是等一下,你不想在FutureBuilder里創(chuàng)建Future。

正如這段代碼所代表

每次重建FutureBuilder的parent時都會重新開始獲取數(shù)據(jù)。

相反,早些獲得Future,就像在小部件生命周期方法一樣

initState
didUpdateWidget
didChangeDependencies

因此,創(chuàng)建新的狀態(tài)變量并將此數(shù)據(jù)獲取請求,從FutureBuilder移到initState,在那里我們會給它一個builder,但要確保使用connectionState檢查Future的狀態(tài),并在Future忙碌時顯示適當(dāng)?shù)男〔考?/p>

Future<MyData> _data;
initState() {
    _data = http.get('http://awessome.data'),
}
FutureBuilder(
    future: _data,
    builder: (context, snapshot) {
        if (snapshot.connectionState == done) {
            return AwesomeData(snapshot.data);
        } else {
            return CircularProgressIndicator();
        }
    }
)

最后,在Future進行解析時最好檢查有沒有發(fā)生錯誤

if (snapshot.connectionState == done) {
    if (snapshot.hasError) {
        return SomethingWenWrong();
    }
}

其他connectionStates

你也可以使用其他connectionStates

  • ConnectionState.active
  • ConnectionState.done
  • ConnectionState.waiting
  • ConnectionState.none

如果想了解有關(guān)FutureBuilder的內(nèi)容,或者關(guān)于Flutter的其他功能,請訪問flutter.dev

以上就是Flutter Widget之FutureBuilder使用示例詳解的詳細內(nèi)容,更多關(guān)于Flutter Widget FutureBuilder的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

资中县| 宽城| 五莲县| 高陵县| 霍山县| 冕宁县| 乐都县| 蒙自县| 盐亭县| 金寨县| 伊吾县| 陇西县| 潼南县| 镇远县| 宁津县| 宁海县| 吉林省| 石屏县| 涞水县| 清丰县| 邯郸县| 乃东县| 宜城市| 古浪县| 牟定县| 连平县| 涿州市| 来安县| 留坝县| 灵丘县| 泰宁县| 宝兴县| 芷江| 资溪县| 信宜市| 皮山县| 福泉市| 平和县| 全椒县| 临夏县| 邯郸县|