質問編集履歴
1
環境を追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -48,12 +48,32 @@
|
|
48
48
|
|
49
49
|
しかしいずれも`Header`内から直接データベースにアクセスするものではなく、処理は`Header`で完結しません。
|
50
50
|
|
51
|
-
REST APIを作るのはサーバーのセキュリティ低下に繋がる可能性もありますし、HTTPリクエスト回数が増えることにも繋がります。
|
51
|
+
REST APIを作るのはサーバーのセキュリティ低下に繋がる可能性もありますし、HTTPリクエスト回数が増えることにも繋がります。また、SSRの恩恵を受けることができません。
|
52
52
|
|
53
53
|
`index.tsx`の中に記述する方法は、`Header`の呼び出し側が`Header`のロジックに依存することに繋がりかねず、また同様の処理を`index.tsx`以外のページにもコピペしなければいけません。カプセル化ができているとは言えず、気持ち悪いです。
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
現時点では後者の方法を検討しています。`Header`に必要なデータを新しい`interface`に切り出し、その`interface`の中身を埋めるメソッドを新たに作成し、それを`index.tsx`の`getServerSideProps`から呼び出す方向で考えています。
|
54
58
|
|
55
59
|
|
56
60
|
|
57
61
|
上記の方法を試す前に一度確認したいのですが、`Header`からサーバーサイドの処理を直接呼び出すことは可能ですか?
|
58
62
|
|
59
63
|
また、何か別の効率的な方法がありますか?
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
## 環境
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
macOS Catalina
|
72
|
+
|
73
|
+
Node.js 12
|
74
|
+
|
75
|
+
Next.js 11.0.1
|
76
|
+
|
77
|
+
React 17.0.2
|
78
|
+
|
79
|
+
TypeScript
|