【问题标题】:Dart: Root folder of relative paths differs in Dartium and ChromeDart:相对路径的根文件夹在 Dartium 和 Chrome 中不同
【发布时间】:2014-06-17 03:14:54
【问题描述】:

刚刚升级到 Dart 1.3.3 并观察了 Dartium 与 Chrome 中相对资源路径的不同根文件夹(通过 dart2js 编译)。

我的文件夹结构如下:

web/
  elements/
    my_element.css
    my_element.dart
    my_element.html

到目前为止,我已经通过

引用了my_element.css
<link rel="stylesheet" href="my_element.css">

my_element.html

但自从升级到 1.3.3 后,我收到“404 Not found”错误:

Failed to load resource: the server responded with a status of 404 (Not Found)
  [...]/web/my_element.css

看来,elements-文件夹现在在指定 css 文件的相对路径时被忽略了。

将路径更改为:

<link rel="stylesheet" href="elements/my_element.css">

解决了 Dartium 中的问题,但在 Chrome 中(通过 dart2js 编译时),再次出现 404 错误:

Failed to load resource: the server responded with a status of 404 (Not Found)
  [...]/web/elements/elements/my_element.css

与 Dartium 相比,Chrome 中似乎没有忽略元素文件夹。

但是如何解决这个困境呢?

【问题讨论】:

  • 我认为你应该提交一个错误。
  • "my-element" - 听起来像聚合物?如果您使用它,您使用的是哪个版本?您还在使用哪些其他软件包?
  • 你把rel="stylesheet"放在哪里了?
  • @Robert,正确,我使用的是聚合物,版本 0.9.5+2。其他包是:动画、加密、国际、颤抖。 rel="stylesheet" 放置在 href 属性之前。整个链接元素是模板中的第一条语句:&lt;polymer-element name="my-element"&gt;&lt;template&gt; &lt;link rel="stylesheet" href="my_element.css"&gt;[...]&lt;/template&gt;&lt;/polymer-element&gt;
  • 好的,您是否也可以尝试将您的 .css 文件移动到您的包的 lib 目录,然后使用 href="packages//my-element.css" 看看是否可行?

标签: dart dart-polymer


【解决方案1】:

这个问题是 7 月的 marked as Fixed。内联导入的转换器似乎是一个错误;这就是它只影响 Chrome 的原因(Dartium 本地运行代码,不使用转换器)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多