3

SystemJS + JSPM管理プロジェクトで、Polymerの要素を使用するにはどうすればよいですか?

以前はPolymerjspm install github:Polymer/polymerをインストールし、 Iron-Elementsもインストールしていました。jspm install github:PolymerElements/iron-elements

これには複数の問題があるようです:

たとえば、iron-elements.html ファイルでは、インポートが間違ったパスに<link rel="import" href="../polymer/polymer.html">移動します。Polymerディレクトリは実際にはそのバージョンで名前が付けられているため (通常はJSPMで)、実際のインポートは my.xml にある必要があります<link rel="import" href="../polymer@1.0.5/polymer.html">。場合。

第 2 に、 Polymerファイルをインポートする際に、 SystemJS環境では、バージョン パスを含めて、そのように index.html 内に配置するのは少し鈍いようです。

<link rel="import" href="jspm_packages/bower/Polymer/polymer@1.0.5/polymer.html" />

SystemJSでこれらの html インポートを行うより良い方法はありますか?

第 3 に、Polymerのダウンロード オプションは、「カート」のようなオプションを使用して手動でダウンロードするか、Bowerで行うため、JSPM のリポジトリまたはを介し​​て鉄要素または要素を取得しようとすると、それらの依存関係がダウンロードされず、さらには依存関係を手動で追加すると、バージョンの名前がJSPMであるため、それらのパスは依然として間違っています。github:bower:import

JSPMgoogle groupでのこの議論によると、この問題は

PolymerがBowerを想定しているということです

SystemJSまたはPolymerのいずれかを捨てることを余儀なくされるのは、私が本当にやりたくないことです。

ただし、( Aureliaフレームワークの) 別の議論で、Rob Eisenberg は Polymer をAureliaで使用する可能性について言及しています。

Polymer の Paper 要素を使用できるはずです。そのためには、Aurelia の前にページに Polymer フレームワークを含めます。

私が知る限り、AureliaJSPMを使用しているので、それは可能ですか?

可能性のある解決策は、RequireJSに切り替えることです。その後、 Bowerを使用してPolymerのものを追加できますが、 SystemJSを使用したいのですが、 Aureliaで動作するかどうかはわかりません。また、SystemJSJSPMを使い続けることができ、 PolymerだけにBowerを使用することもできました。


アップデート

より良い答えが見つかるまで、一時的な解決策はJSPMBowerの両方を使用することです。BowerはPolymerにのみ使用されます。

4

1 に答える 1

4

問題が解決したかどうかはわかりませんが、jspm を使用してポリマーとそのコンポーネントをインストールする方法を見つけました。

問題https://github.com/Polymer/polymer/issues/1133を参照して、次の手順に従います。

npm install jspm-bower-endpoint
jspm registry create bower jspm-bower-endpoint

これにより、jspm install nom: と同じように、jspm を介して bower パッケージをインストールできるようになります。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">

これが役に立つことを願っています!

于 2015-09-21T14:05:24.850 に答える