Reactで画像ファイルを任意のタイミングでリフレッシュする方法

Reactで画像ファイルを任意のタイミングでリフレッシュする方法:


TL;DR

imgタグのsrcにハッシュをつければ良い


サンプルコード

以下のコードではhashをReactコンポーネントのstateにもたせている。

hashはimgタグのsrcの最後にクエリパラメータとして渡す。

hashの値を変えるメソッドrefreshImgを呼ぶことで任意のタイミングで画像をリフレッシュすることができる。

render() { 
  const { imgHash } = this.state; 
  return <img src={`/img/url?${imgHash}`} 
} 
refreshImg() { 
  this.setState({ 
    imgHash: new Date().getTime(), 
  }); 
} 
参考:Force React to reload an image file?

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)