获取飞镖聚合物元素资源 URL



在聚合物.dart元素中,我需要加载资源。问题是我不知道该资源的位置。

这是我的消息来源的组织:

web/
|- my_project.dart
|- my_project.html
|- my_project.css
|- element/
   |- element.html
   |- element.dart
   |- res.txt

我需要在元素中加载res.txt.

为此,我使用:

HttpRequest.getString('res.txt');

它尝试加载/res.txt而不是/element/res.txt.

当然,如果我这样做...

HttpRequest.getString('element/res.txt');

。它可以工作,但这对我来说还不够,因为我希望我的聚合物元件尽可能便携和可重复使用(这是聚合物的目的),并且我不希望我的元件依赖于位置。

我还应该指出,直到0.8.5版本,它在Polymer.dart中正常工作。

所以,我想我想要这样的东西...

HttpRequest.getString(getElementLocation() + '/res.txt');

。但我还没有找到任何相应的内容。

这可能吗?

John Messerly在上面评论中提到的Google小组上回答了这个问题。请参阅 https://groups.google.com/a/dartlang.org/d/msg/web-ui/f29kUdNI7Bw/W8dpbMG6iCEJ。

聚合物.js具有resolvePath的API(见 https://github.com/Polymer/polymer/blob/2f7c65592dd2c8f9da7eed8c96c076e49fa208d1/src/declaration/path.js#L14)。聚合物飞镖没有它。

最新更新