在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');
...但我没有发现任何相应的内容。
这可能吗?
答案 0 :(得分:0)
John Messerly在上述评论中提到的Google小组上回答了此问题。请参阅https://groups.google.com/a/dartlang.org/d/msg/web-ui/f29kUdNI7Bw/W8dpbMG6iCEJ。
Polymer.js有一个resolvePath
API(参见https://github.com/Polymer/polymer/blob/2f7c65592dd2c8f9da7eed8c96c076e49fa208d1/src/declaration/path.js#L14)。 Polymer Dart没有它。