GROWI 独自実装のユーティリティについて

参考ページ

useContextSWR

  • 引数ありの場合、宣言時に初期化を行う
    • 宣言順序=初期化順序となる挙動を保証するため、内部で cache.set を使っている
  • Next Page からのみ利用される前提
  • mutate メソッドは利用できないようになっている

useStaticSWR

  • 引数ありの場合、宣言時に初期化を行う
    • useEffect 内で mutate を使っている
    • これは宣言順序と初期化順序が前後することを許容する代わりに、確実に mutate メソッドを効かせるため
  • なぜ useContextSWR と同様の実装ではないのか?
    • ➡️ 仮に宣言時に cache.set するコードを入れてしまうと mutate した際にバッティングし、意図通りに更新されないため