2

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

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

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

我需要在 element.dart 中加载res.txt.

为此,我使用:

HttpRequest.getString('res.txt');

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

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

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

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

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

所以,我想我想要类似的东西......

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

...但我还没有找到任何对应的东西。

这可能吗 ?

4

1 回答 1

0

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

Polymer.js 有一个resolvePathAPI(参见https://github.com/Polymer/polymer/blob/2f7c65592dd2c8f9da7eed8c96c076e49fa208d1/src/declaration/path.js#L14)。聚合物飞镖没有它。

于 2013-12-27T17:27:23.790 回答