Dart 包

包是一种封装一组编程单元的机制。应用程序有时可能需要集成某些第三方库或插件。

每种语言都有一种机制来管理外部软件包,如MavenGradle for JavaNuget for .NETnpm 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命令的帮助。

 

安装包

考虑应用程序需要解析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命令,如下所示。

Pub Get Command

可以在packages文件夹下验证下载的包及其相关包。

包

由于现在安装完成,我们需要在项目中引用 dart xml 。语法如下:

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

读取XML字符串

要读取XML字符串并验证输入,Dart XML使用 parse() 方法。语法如下:

xml.parse(String input):

示例:解析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 异常包括:序号异常与描述1DeferredLoadException延迟库无法加载时抛出。2FormatE ...