包是一種封裝一組程式設計單元的機制。應用程式有時可能需要整合某些第三方庫或外掛。每種語言都有一種機制來管理外部軟體包,如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
直接獲取所有命令 -
考慮應用程式需要解析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>