Next.js: 静的リソースが間違った場所からレンダリングされています(カスタムサーバー上)

作成日 2016年12月27日  ·  3コメント  ·  ソース: vercel/next.js

カスタムサーバー(2.0.0ベータ版)を使用すると、静的リソースで奇妙な(そして私の意見では間違った)動作が発生します。
たとえば、カスタムサーバーがリクエストを「/ blog /:id」に送信した場合、静的リソースは「./blog/static/image.jpg」で検索されます。

簡単に再現できるように、「parameterized-routing」の「blog」のレンダリング方法を編集しました。

return <div>
      <h1>My {this.props.id} blog post</h1>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua.
      </p>
      <img src="./static/x.jpg" />
    </div>

そしてもちろん、「x.jpg」という名前の画像を「static」フォルダに追加しました。

「../static/x.jpg」内のファイルを調べることで回避できますが、ブログがindex.jsの下にないという事実を悪用しているため、これは誤りです。

最も参考になるコメント

<img src="/static/x.jpg" />./なし)ではないでしょうか?
ページは/blog/idで提供されると仮定しました。

全てのコメント3件

@DvirShは、サンプルリポジトリを送っていただけませんか。
ですから、これを詳しく見ることができます。

<img src="/static/x.jpg" />./なし)ではないでしょうか?
ページは/blog/idで提供されると仮定しました。

@nkzawa your'e right!

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

knipferrc picture knipferrc  ·  3コメント

timneutkens picture timneutkens  ·  3コメント

jesselee34 picture jesselee34  ·  3コメント

rauchg picture rauchg  ·  3コメント

flybayer picture flybayer  ·  3コメント