【发布时间】:2014-12-31 00:06:23
【问题描述】:
我正在开发一个大型 Dart 项目,其中包括一个 Web 前端以及几个自定义库。我们正在使用here 所述的推荐文件夹结构。
my_app/
lib/
my_library1/
example/
lib/
my_library1.dart
my_library1.html
pubspec.yaml
...
web/
pubspec.yaml
我们的 lib 文件夹中有几个库,我们都将它们导入到我们的主 pubspec.yaml 中,如下所示:
dependencies:
my_library1:
path: lib/my_library1
这一切都很好,但是当我使用pub build 生成 JS 构建时,我收到大量关于如何为我们拥有的每个库正确导入包的 Linter 警告。
例如,my_library1 库在 my_library1.html 文件中有一个聚合物导入,如下所示:
<link rel="import" href="../../packages/polymer/polymer.html">
对此的警告是:
[Warning from polymer (Linter) on my_app|lib/my_library1/lib/my_library1.html]:
line 1, column 1 of lib\my_library1\lib\my_library1.html: Invalid URL to reach to another package: ../../packages/polymer/polymer.html. Path reaching to other packages must first reach up all the way to the packages directory. For example, try changing the URL to: ../../../../packages/polymer/polymer.html. See http://goo.gl/5HPeuP#code_transformers_2 for details.
<link rel="import" href="../../packages/polymer/polymer.html">
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
现在,如果我将该行更改为他们建议的内容 (../../../../packages/polymer/polymer.html),则会收到此错误:
[Warning from polymer (Linter) on my_library1|lib/my_library1.html]:
line 1, column 1 of lib\my_library1.html: Invalid URL to reach to another package: ../../../../packages/polymer/polymer.html. Path reaching to other packages must first reach up all the way to the packages directory. For example, try changing the URL to: ../../packages/polymer/polymer.html. See http://goo.gl/5HPeuP#code_transformers_2 for details.
<link rel="import" href="../../../../packages/polymer/polymer.html">
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
所以不管我怎么做,都是错的。有趣的是,警告的源文件从my_library1|lib\my_library1.html 更改为my_app|lib\my_library1\lib\my_library1.html。
这对任何人都有意义吗?
顺便说一句,我一直在各种 Dart 网站(#1、#2、#3)上阅读这些内容,但无济于事。
我正在使用 Dart 1.7.2 (STABLE) 和聚合物 0.15.3+2
【问题讨论】:
-
你使用的是什么 Dart 和 Polymer 版本?
-
抱歉,我使用的是 Dart 1.7.2 (STABLE) 和聚合物 0.15.3+2
标签: dart dart-polymer