2017-06-18 5 views
0

私は、混在したhtml/js/cssコードをlintするために、polymer-ide(vscodeでは、同じ問題が原子にあった)を試しています。私のパブリックディレクトリはどこにあるのですか?

私が得る最初のエラー:

<link rel="import" href="/bower_components/polymer/polymer.html">

bower_components、および他の「国民のすべて:

[polymer-ide] Unable to load import: ENOENT: no such file or directory, open '/Users/jim/development/myproject/bower_components/polymer/polymer.html'

私の各コンポーネントは、このように、絶対パスをインポート私のプロジェクトのコードは「public」ディレクトリにあるので、インポートを探すべきパスは:

'/Users/jim/development/myproject/public/bower_components/polymer/polymer.html'

私は自分のコード全体で相対参照を使用することができますが、それはリファクタリングとは逆のことであり、私のプロジェクト全体では「テール・ワギング・ドッグ」の状況になります。

そこにがあります。は、私のコンテンツがファイルシステムの別の場所からホストされていることをポリマーに伝える手段にする必要があります。理想的には、複数のマウントポイントを与える必要があります。これは、パッケージに分割し、各パッケージが別の場所に存在する可能性があるためです。

polymer-ideの設定に関するドキュメントはありません。私は何が欠けていますか?

答えて

0

Polymerは、polymer.jsonを使用して、ビルドやその他の設定のためにファイルとフォルダの構造を取得するために内部的に設定します。しかし、私はあなたの問題を解決するとは思わない、ポリマーがこのパス設定を使用するように指示する方法がないからです。

また、polymer.jsonでsourceを使用すると、ビルド時のみ有効であることがわかりました。クローゼット方法は、あなたのコードをリファクタリングすることです。これを使用してください...

<link rel="import" href="/public/bower_components/polymer/polymer.html"> 

これはOPの質問とは関係ありませんが、私はここでポイントをつける必要があります。本当に


あなたのすべてのポリマーのプロジェクトファイルは、あなたが--rootオプション

polymer serve --root public/ 
+0

で公開/ディレクトリの外部プロジェクトを実行することができますpolymer.jsonを含む公共の内側にある場合、私はこれを試してみましたが、それはモジュールとREST APIをカプセル化しようとすると、何かの不具合が生じます。私の古い方法は、REST APIと同じレベルのパブリックファイルをマウントすることに依存していたので、htmlインポートはローカルURLを参照することができました。今では、すべてのモジュールにマウントされている場所を認識させる必要があります。 これは実際に犬を揺らす尻尾です。より良いlintingのために、私はカプセル化されていない方法で自分のコードを修正しています。良くない。 –

関連する問題