2

パッケージRouterを使用してMeteor 0.6.6.1を実行しており、すべての画像はパブリックフォルダーにあります。私の問題: URL ルート ( http://localhost:3000) にいるとき、テンプレートがレンダリングされた後、下の画像のコンソールを使用して示されているように、画像を読み込むことができます。

URLルートにあるときに画像をロードできます

しかしhttp://localhost:3000/orderProduct/frame1、Router を使用して適切なテンプレートを駆動する別の URL ( ) にいる場合、次の画像に示すように、テンプレートがレンダリングされた後に同じ画像を読み込むことができません。

ルートアドレスにある場合、画像を読み込めません

コンソールの出力からわかるように、唯一の違いは、よく知られた Chrome のコンテンツ タイプに関する警告です。

テンプレートがレンダリングされた後、ルーティングされた URL に画像をロードしたいと思います。誰か助けてくれませんか?前もって感謝します。

4

1 に答える 1

7

で始まらない画像には相対 URL を使用します/。この場合、ブラウザーは現在のドキュメント パスに関連する画像を検索します。orderProductしたがって、2番目のケースでは、存在しないフォルダーを検索するため、エラーが発生します。ブラウザが取得しようとしている画像の URL を確認してください。2 つの例では異なります。

問題を解決するには、次で始まる絶対パスを使用します/

$('body').append('<img src="/imageName.png">');

この場合、ブラウザーは現在のサーバー上の指定されたパスで写真を探し、現在のページ アドレスに関係なく写真を見つけます。

于 2013-10-16T16:39:06.823 に答える