javascript-带有Polymer Elements的SystemJS
作者:互联网
在SystemJS JSPM托管项目中,如何使用Polymer的元素?
我使用jspm install github:Polymer / polymer来安装Polymer,还使用jspm install github:PolymerElements / iron-elements来安装铁元素.
似乎有多个问题:
首先,例如在iron-elements.html文件中,导入将进入错误的路径:< link rel =“ import” href =“ ../ polymer / polymer.html”>尽管Polymer目录实际上是用其版本命名的(与JSPM一样),所以实际的导入应为< link rel =“ import” href =“ ../ polymer@1.0.5/polymer.html”>就我而言.
其次,在导入Polymer文件时,在SystemJS环境中将其像这样放置在index.html中(包括版本路径)似乎有点钝了:
<link rel="import" href="jspm_packages/bower/Polymer/polymer@1.0.5/polymer.html" />
在SystemJS中,有没有更好的方法可以将这些html导入?
第三,由于Polymer的下载选项是通过使用“购物车”之类的选项通过手动下载或在Bower中进行的,因此,如果我尝试通过JSPM的github:存储库或bower:来获取铁元素或纸质元素,则不会下载其依赖项,即使我手动添加了依赖项,由于JSPM的版本命名,它们的导入路径仍然会出错.
根据JSPM的Google组中的discussion,该问题
is that Polymer assumes Bower
哪种方式迫使我放弃我确实不想做的SystemJS或Polymer.
但是,在另一个discussion(Aurelia框架)中,Rob Eisenberg提到了将Polymer与Aurelia结合使用的可能性:
You should be able to use Polymer’s Paper elements. To do that you
would include the Polymer framework in your page prior to Aurelia.
据我了解,Aurelia正在使用JSPM,可以做到吗?
一个可能的解决方案是切换到RequireJS,然后我可以使用Bower添加Polymer的内容,但是我真的很想使用SystemJS,但不确定是否可以在Aurelia中使用.
另外,我可以继续使用SystemJS和JSPM,也可以将Bower仅用于Polymer东西.
更新资料
在找到更好的答案之前,一个临时解决方案是同时使用JSPM和Bower,其中Bower仅用于Polymer.
解决方法:
我不知道您是否解决了问题,但是我找到了一种通过jspm安装聚合物及其组件的方法.
参考问题https://github.com/Polymer/polymer/issues/1133,请执行以下步骤:
npm install jspm-bower-endpoint
jspm registry create bower jspm-bower-endpoint
这样,您将可以通过jspm安装Bower软件包,就像可以执行jspm install nom:一样,也可以对bower进行相同的操作.
现在,安装Polymer和Paper-elements(或任何其他集合).
jspm install bower:polymer
jspm install bower:PolymerElements/paper-elements
在最后一步中,我遇到了一个打包版本的小问题,我无法通过jspm解决.因此,只需转到jspm_packages / bower / PolymerElements / paper-elements @ version并运行
bower install
最后一步将安装纸元素的所有组件.
现在,只需通过以下方式将所需元素附加到html模板:
<link rel="import" href="jspm_packages/bower/PolymerElements/paper-elements@version/bower_components/paper-button/paper-button.html">
希望您能找到有用的!
标签:systemjs,jspm,aurelia,polymer,javascript 来源: https://codeday.me/bug/20191028/1950022.html