我正在Dart中创建一个Web应用程序,我正在使用Bootstrap CSS库。由于它是一个外部库,因此创建了一个文件夹lib/third_party
并将库放在那里。问题是我现在无法在我的html页面中包含库中的css文件。
我应该在src=""
属性中添加什么路径以便加载文件?
答案 0 :(得分:3)
您的应用使用的资源文件在Dart术语中称为资产。
Dart编辑器中的开发服务器和通过执行pub serve --no-dart2js
启动的服务器目前是具有不同行为的不同程序。有计划将这两者联合起来,但就像现在一样,前者与Dart编辑器更紧密地集成在一起,后者具有更多功能,特别是在资产方面。例如,内置开发服务器尚不支持资产变换器。
(此处描述的约定也适用于pub build
)
有关如何构建包目录的约定。至于放置资产的位置,当前包的私有资产放在web/
目录中,并且非特定于当前包的资产或要与其他包共享的资产属于该文件夹{ {1}}。
通过指定相对路径或绝对路径,可以从html页面引用放置在asset/
中的资源。根被视为web/
目录本身。
web
目录下的资源可供asset
下的应用程序使用。请注意,资产一词首先以单数形式出现,然后以复数形式出现。在这种情况下,使用相对路径没有多大意义。 Bootstrap库最好放在这里。
为了完整性,从包中导出的Dart代码放在目录/assets/<package_name>/
中,并通过在路径前加lib
来包含在
package:package_name/
如果一个包正在引用它本身正在导出的文件,那么include 'package:package_name/ … .dart';
就是当前包的名称,一开始可能看起来很奇怪。
来源:
除开发服务器之间的差异外,上述所有信息均来自http://pub.dartlang.org/doc/assets-and-transformers.html