我有一个(聚合物)Web组件,我想让人们以跨源资源共享(CORS)的方式访问它。这工作正常,但我不知道如何可以从该组件内的JS代码提供像图像和JSON文件的相对路径。它们被解释为相对于包含页面,而不是相对于HTML导入。我想要什么我想要的是一个JS变量,它给出了导入的包含HTML文件的路径。相对路径很重要,因为我也希望人们能够轻松地将其部署到自己的站点,而不依赖于硬编码路径来访问我的资源副本。来自JS导入HTML的相对路径资源
例如,您在example.com加载index.html,然后它有:
<link rel="import" href="//my-site.com/components/my-component/my-component.html">
<my-component> ... </my-component>
现在里面my-component.html
,我有一些JS加载基于用户的个人资料中的资源 - 图像和JSON语言文件为i18next.js。问题是,除非我指定它们作为一个绝对路径my-site.com
,我不想这样做,他们将在example.com/index.html
理解为相对于页面,而不是相对于my-component.html
任何图片的路径我在我的模板中静态指定工作正常并正确加载,因为它相对于HTML导入路径。我只是不确定如何为从JS加载的资源执行此操作,因为它们将与包含页面(example.com/index.html)相关。是否有某个属性或函数公开此导入路径?谢谢。
谢谢,那就是我一直在寻找的东西。我已经阅读过那份文件,或者我认为,但我一定错过了。 – 2015-03-14 21:48:57
不用担心,文档中有很多东西,所以很容易忽略:) – robdodson 2015-03-18 17:06:27
@robdodson您可以请,请在[Polymer docs]中提供示例(https://www.polymer-project.org/0.5 /docs/polymer/polymer.html#resolvepath)? – DoK 2015-05-15 09:37:11