Dart包

包是一種封裝一組編程單元的機制。應用程式有時可能需要集成某些第三方庫或插件。每種語言都有一種機制來管理外部軟體包,如Maven或Gradle for Java,Nuget for .NET,npm for Node.js等。Dart的軟體包管理器是pub

Pub有助於在存儲庫中安裝包。託管軟體包的存儲庫可以在 https://pub.dartlang.org/ 找到。

包元數據在檔pubsec.yaml中定義。YAML是Yet Another Markup Language的縮寫。pub工具可用於下載應用程式所需的所有各種庫。

每個Dart應用程式都有一個pubspec.yaml檔,其中包含對其他庫的應用程式依賴性以及應用程式的元數據,如應用程式名稱,作者,版本和描述。

pubspec.yaml檔的內容應該如下所示 -

name: 'vector_victor'
version: 0.0.1
description: An absolute bare-bones web app.
...
dependencies: browser: '>=0.10.0 <0.11.0'

pub的一些重要命令如下 -

編號 命令 描述
1 pub get 獲取應用程式所依賴的所有包。
2 pub upgrade 將所有依賴項升級到較新版本。
3 pub build 用於構建您的Web應用程式,它將創建一個構建檔夾,其中包含所有相關腳本。
4 pub help 將提供所有pub命令的幫助。

如果使用的是WebStorm IDE,那麼可以右鍵單擊pubspec.yaml直接獲取所有命令 -

WebStorm IDE

安裝包

考慮應用程式需要解析xml的示例。Dart XML是一個羽量級的庫,它是開源的,可以穩定地解析,遍曆,查詢和構建XML文檔。

完成上述任務的步驟如下 -

第1步 - 將以下內容添加到pubsec.yaml檔中。

name: TestApp
version: 0.0.1
description: A simple console application.
#dependencies:
#  foo_bar: '>=1.0.0 <2.0.0'
dependencies: https://mail.google.com/mail/u/0/images/cleardot.gif
xml:

右鍵單擊pubsec.yaml並獲取依賴項。它將在內部觸發pub get命令,如下所示 -

可以在packages檔夾下驗證下載的包及其相關包。

包示例

由於安裝現在已經完成,需要在專案中引用dart xml。語法如下 -

import 'package:xml/xml.dart' as xml;

讀取XML字串

要讀取XML字串並驗證輸入,Dart XML使用parse()方法。語法如下 -

xml.parse(String input):

示例:解析XML字串輸入

以下示例顯示如何解析XML字串輸入 -

import 'package:xml/xml.dart' as xml;
void main(){
   print("xml");
   var bookshelfXml = '''<?xml version = "1.0"?>
   <bookshelf>
      <book>
         <title lang = "english">Growing a Language</title>
         <price>29.99</price>
      </book>

      <book>
         <title lang = "english">Learning XML</title>
         <price>39.95</price>
      </book>
      <price>132.00</price>
   </bookshelf>''';

   var document = xml.parse(bookshelfXml);
   print(document.toString());
}

執行上面示例代碼,得到以下結果 -

<?xml version = "1.0"?><bookshelf>
   <book>
      <title lang = "english">Growing a Language</title>
      <price>29.99</price>
   </book>

   <book>
      <title lang = "english">Learning XML</title>
      <price>39.95</price>
   </book>
   <price>132.00</price>
</bookshelf>

上一篇: Dart集合 下一篇: Dart異常