Javascript 聚合物3相对路径

Javascript 聚合物3相对路径,javascript,svg,polymer,relative-path,Javascript,Svg,Polymer,Relative Path,我想将聚合物元素从聚合物2迁移到聚合物3 聚合元素使用到包含.svg文件的文件夹的相对路径 const url = this.resolveUrl('./icons/' + this.icon + '.svg'); 问题是,旧组件文件是一个.html文件,因此如果将其包含在脚本部分中,则相对路径始终相同。 现在组件文件是一个javascript文件,因此相对路径(.)是包含javascript文件的文件的路径要解决此问题,请将以下getter方法添加到元素类中: static get impo

我想将聚合物元素从聚合物2迁移到聚合物3

聚合元素使用到包含.svg文件的文件夹的相对路径

const url = this.resolveUrl('./icons/' + this.icon + '.svg');
问题是,旧组件文件是一个.html文件,因此如果将其包含在脚本部分中,则相对路径始终相同。


现在组件文件是一个javascript文件,因此相对路径(.)是包含javascript文件的文件的路径


要解决此问题,请将以下getter方法添加到元素类中:

static get importMeta() { 
  return import.meta; 
}
加载元素时,上面的getter将指定元素的
importPath
属性
resolveUrl
现在将基于
importPath
而不是基于主文档解析相对路径

顺便提一下,您还可以在数据绑定中使用
importPath
,如下所示:

<img src$="[[importPath]]/icons/[[icon]].png">

有关Polymer为什么默认情况下不重写模板中URL的更多信息

(顺便说一句,该页面上有关
importPath
的内容似乎需要更新。我需要使用上面概述的最新信息更新网站。)


希望这能有所帮助

谢谢你在聚合物领域的工作。唯一的问题是,由于单词import,我无法以angular解析模块。我不确定解析或构建过程是什么,但我能够使用polymer cli传输
import.meta
,并将其用于angular。代码如下:我将带有nom的polymer组件发布到我们的注册表中,之后我将其作为dependecy以angular的形式写入json包中。如果我想使用组件i get Module parse failed:意外标记(21:21),您可能需要适当的加载程序来处理此文件类型。|静态get importMeta(){| return import.meta;|}i「wdm」:编译失败。问题是wenback无法处理import.meta。问题已经存在,对于angular(不是angular.js),我无法导入组件的构建版本。为了使用构建版本,我是否需要在构建文件中更改任何内容