当我使用聚合物服务在本地运行演示时,我收到一个错误,即js文件的路径不好。此js文件用于导入的my-imported-element。
如果我在这里修复它,那么当我部署应用程序时,我在生产中遇到错误的路径错误
如何使路径适用于两者?这也是图像文件的问题。
如果我正在运行导入my-element的演示,那么本地的作用是什么:
workerFile: "../bower_components/my-imported-element/js/Broadway/Decoder.js",
在项目服务器上有效:
workerFile: "bower_components/my-imported-element/js/Broadway/Decoder.js",
根据我的理解,运行"聚合物服务"然后进入演示将从一个组成的" components / my-element"像这样的道路:
http://127.0.0.1:8081/components/my-element/demo/
所以我猜我需要的路径是
http://127.0.0.1:8081/components/my-element/bower_components/my_imported_element/js/Broadway/Decoder.js
我是否需要在检查" demo"的URL的代码中添加一个hacky行。并有条件地添加" ../"到路上?或者有更好的方法吗?
答案 0 :(得分:0)
解决方案是使用名为resolveUrl的聚合物方法。这“相对于包含此元素的dom-module的文档的原始位置重写给定的URL。此方法将在硫化之前和之后返回相同的URL。”
到目前为止,无论我是在单个元素的演示页面中运行此行,还是从其他地方导入该元素,该路径都可以完美地运行。
workerFile: this.resolveUrl("js/Broadway/Decoder.js")