欧美中文字幕第一页-欧美中文字幕一区-欧美中文字幕一区二区三区-欧美中文字幕在线-欧美中文字幕在线播放-欧美中文字幕在线视频

Dart 2.3 發布 帶來構建 UI 新特性

我是創始人李巖:很抱歉!給自己產品做個廣告,點擊進來看看。  

Google I/O 2019 第二天,官方發布了 Dart 2.3 穩定版本。此版本針對構建用戶界面進行了優化,改善了開發者在開發 UI 時的編碼體驗,為開發 Flutter UI 提供了新的工具支持,同時還提供了兩個新的網站:dart.dev 與 pub.dev。

Dart 2.3 發布 帶來構建 UI 新特性

用于構建用戶界面的新語言特性

在客戶端開發方面, Dart Flutter 團隊之間長期合作的項目之一就是使用 Dart 捕獲用戶界面代碼,而不需要標記語言。開發團隊認為對行為和布局使用單一語言具有很大的好處,包括減少上下文切換、不必學習兩種語言,并在構建 UI 時允許通用編程語言的所有抽象功能。

在 Dart 最近幾個版本中進行了一些改進,例如簡化構建 widget 的代碼,添加自動的 int-to-double 轉換以及添加 set literals。Dart 2.3 中,進一步帶來了三個用于描述 UI 的新特性:基于列表、條件與重復。

可以將 UI 視為 widget 節點的樹,一些節點包含 widget 列表,例如可滾動元素的列表。通常這些列表是從其它列表構建的。為此,添加了一個新的?spread operator?擴展運算符特性,用于將元素從一個列表解壓到另一個列表。在下面的示例中,buildMainElements() 返回一個 widget 列表,然后使用擴展運算符 … 將其解壓到周圍列表中:

Widget?build(BuildContext?context)?{??return?Column(children:?[????Header(),????...buildMainElements(),????Footer(),??]);}

另一個常見的 UI 任務是根據條件包含特定元素。例如,開發者可能希望在所有頁面上都帶有“下一步”按鈕,當然條件是最后一頁不需要這個按鈕。在 Dart 2.3 中,可以使用以下?collection if?執行此操作:

Widget?build(BuildContext?context)?{??return?Column(children:?[????Text(mainText),????if?(page?!=?pages.last)??????FlatButton(child:?Text('Next')),??]);}

最后,UI 經常從其它重復元素構建重復元素,可以使用新的?collection for?特性來描述這一點:

Widget?build(BuildContext?context)?{??return?Column(children:?[????Text(mainText),????for?(var?section?in?sections)??????HeadingAction(section.heading),??]);}

這三個新特性是語言特性,而不是標記命令,因此它們是完全可組合的,可以在處理集合的任何上下文中使用。這些特性包含在 Flutter 1.5 版本中,可在 Dart 2.3 版本中找到。

此外還添加了新的 lint,可以在靜態分析中配置這些 lint 以強制使用新的 spread、collection if 和 features for 特性。

IDE 和編輯器功能

配合 Dart 2.3 的 UI 特性改進,此版本還為 IDE 支持添加了新的 UI Guides 功能。UI Guides 是在 UI 代碼中繪制的水平和垂直線,使得更容易看到 Flutter UI build() 方法的樹結構。以下是一個計算器應用示例,其中 UI Guides 清楚地表示了?UI 是從包含多個 KeyRows 的擴展列構建的,每個 KeyRows 包含 NumberKeys。

Dart 2.3 發布 帶來構建 UI 新特性

UI Guides 在 IntelliJ IDEA 35.2 和 Android Studio 插件中提供。今后 VS Code 中也有望提供類似支持。

另一方面,開發者在使用 API 時經常會使用代碼自動補全功能,這一功能在補全已導入的庫中的 API 效果很好,但對于還未導入的庫則不起作用。新版本?IDE 現在彌補了這一不足,開發者現成可以在任何前綴上調用代碼補全,并且將看到當前包中所有 API 的完整性,它直接依賴的包以及 SDK。如果補全的是尚未導入的庫中的代碼,則 IDE 會為自動添加導入語句。

Dart 2.3 發布 帶來構建 UI 新特性

新的 Dart 與 Pub 網站

開發團隊為 Dart 平臺構建一個新網站:dart.dev,https://dart.dev。

該網站提供了一個全新的登陸頁面,專注于解釋 Dart 平臺的核心優勢,同時更新了文檔頁面,以獲得更好的導航和更具視覺吸引力。最后,對所有內容進行了大量重組,以使其更容易被發現,并為以前缺少的核心內容添加了新頁面。此外,更新了 Pub 包網站,并使用了方便的新 URL:pub.dev。

隨意打賞

html5新特性
提交建議
微信掃一掃,分享給好友吧。
主站蜘蛛池模板: 中国女人内谢69xxxxx高清 | 亚洲精品国产男人的天堂 | 毛片1级| 中文字幕精品一区二区日本大胸 | 四虎在线精品免费高清在线 | 亚洲人成影院在线高清 | 九九99香蕉在线视频免费 | 日日夜夜操天天干 | 久久99精品久久久久久园产越南 | h片免费网站 | 亚洲欧美日韩在线不卡 | 久久久久夜色精品波多野结衣 | 一区二区三区四区 | 月婷婷色狠狠 | 99热久久这里只精品 | 免费看曰批女人爽的视频网址 | 日韩毛片欧美一级a网站 | 四虎4hu永久免费视频大全 | 久视频免费精品6 | 中国女人和老外的毛片 | 久久精品入口麻豆 | 青青青国产精品国产精品久久久久 | 99视频在线看观免费 | 亚洲va天堂va国产va久 | 亚洲狠狠| 黄色成人在线视频 | 欧美性色福利视频在线观看 | 欧美激情亚洲激情 | 手机在线看福利 | 色拍拍噜噜噜aⅴ在线观看 色拍拍欧美视频在线看 | 国产福利视频奶水在线 | 国产精品视频福利 | 亚洲国产99在线精品一区69堂 | 国产高清在线观看麻豆 | 久久免费资源福利资源站 | 可以直接看的毛片 | 亚洲一级毛片免观看 | 国产理论视频在线观看 | 香蕉久久一区二区三区 | 美女黄色一级毛片 | 影音先锋久草 |