Skip to content

Commit 7085a56

Browse files
authored
docs: update documentation translations
1 parent 8292f81 commit 7085a56

File tree

593 files changed

+77996
-241
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

593 files changed

+77996
-241
lines changed

apps/docs/content/ja/docs/01-app/01-getting-started/10-updating-data.mdx

Lines changed: 47 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
2-
source-updated-at: 2025-06-01T01:32:20.000Z
3-
translation-updated-at: 2025-06-02T20:01:14.188Z
4-
title: データの更新方法
2+
source-updated-at: 2025-06-03T15:30:49.000Z
3+
translation-updated-at: 2025-06-06T16:36:21.895Z
4+
title: データ更新方法
55
nav_title: データ更新
6-
description: Next.jsアプリケーションでデータを更新する方法について学びましょう
6+
description: Next.jsアプリケーションでデータを更新する方法について学びます
77
related:
88
title: APIリファレンス
9-
description: このページで紹介されている機能について詳しく知るには、APIリファレンスをお読みください
9+
description: このページで言及されている機能について詳しく知るにはAPIリファレンスを参照してください
1010
links:
1111
- app/api-reference/functions/revalidatePath
1212
- app/api-reference/functions/revalidateTag
@@ -15,36 +15,36 @@ related:
1515

1616
Next.jsではReactの[サーバー関数 (Server Functions)](https://react.dev/reference/rsc/server-functions)を使用してデータを更新できます。このページでは[サーバー関数の作成](#creating-server-functions)[呼び出し](#invoking-server-functions)方法について説明します。
1717

18-
## サーバー関数
18+
## サーバー関数 (Server Functions)
1919

20-
サーバー関数とは、サーバー上で実行される非同期関数です。サーバー関数はクライアントからネットワークリクエスト経由で呼び出されるため、本質的に非同期です`action`の一部として呼び出される場合、**サーバーアクション (Server Actions)** とも呼ばれます。
20+
サーバー関数はサーバー上で実行される非同期関数です。クライアントからネットワークリクエスト経由で呼び出されるため、サーバー関数は本質的に非同期です`action`の一部として呼び出される場合、**サーバーアクション (Server Actions)** とも呼ばれます。
2121

22-
慣例として、`action``startTransition`に渡される非同期関数です。サーバー関数は以下の場合に自動的に`startTransition`でラップされます
22+
慣例として、`action``startTransition`に渡される非同期関数です。サーバー関数は以下の場合に自動的に`startTransition`でラップされます:
2323

2424
- `<form>``action`プロパティに渡された場合
2525
- `<button>``formAction`プロパティに渡された場合
2626
- `useActionState`に渡された場合
2727

2828
## サーバー関数の作成
2929

30-
サーバー関数は[`use server`](https://react.dev/reference/rsc/use-server)ディレクティブを使用して定義できます。このディレクティブを**非同期**関数の先頭に配置して関数をサーバー関数としてマークするか、別ファイルの先頭に配置してそのファイルのすべてのエクスポートをマークできます
30+
サーバー関数は[`use server`](https://react.dev/reference/rsc/use-server)ディレクティブを使用して定義できます。ディレクティブを**非同期**関数の先頭に配置して関数をサーバー関数としてマークするか、ファイルの先頭に配置してそのファイルのすべてのエクスポートをマークできます
3131

3232
```ts filename="app/lib/actions.ts" switcher
3333
export async function createPost(formData: FormData) {
3434
'use server'
3535
const title = formData.get('title')
3636
const content = formData.get('content')
3737

38-
// データを更新
39-
// キャッシュを再検証
38+
// データ更新
39+
// キャッシュ再検証
4040
}
4141

4242
export async function deletePost(formData: FormData) {
4343
'use server'
4444
const id = formData.get('id')
4545

46-
// データを更新
47-
// キャッシュを再検証
46+
// データ更新
47+
// キャッシュ再検証
4848
}
4949
```
5050

@@ -54,22 +54,22 @@ export async function createPost(formData) {
5454
const title = formData.get('title')
5555
const content = formData.get('content')
5656

57-
// データを更新
58-
// キャッシュを再検証
57+
// データ更新
58+
// キャッシュ再検証
5959
}
6060

6161
export async function deletePost(formData) {
6262
'use server'
6363
const id = formData.get('id')
6464

65-
// データを更新
66-
// キャッシュを再検証
65+
// データ更新
66+
// キャッシュ再検証
6767
}
6868
```
6969

70-
### サーバーコンポーネント
70+
### サーバーコンポーネント (Server Components)
7171

72-
サーバー関数はサーバーコンポーネント内にインラインで定義できます。関数本体の先頭に`"use server"`ディレクティブを追加します:
72+
サーバーコンポーネント内では、関数本体の先頭に`"use server"`ディレクティブを追加することでサーバー関数をインラインで定義できます:
7373

7474
```tsx filename="app/page.tsx" switcher
7575
export default function Page() {
@@ -95,9 +95,9 @@ export default function Page() {
9595
}
9696
```
9797

98-
### クライアントコンポーネント
98+
### クライアントコンポーネント (Client Components)
9999

100-
クライアントコンポーネント内でサーバー関数を定義することはできません。ただし、`"use server"`ディレクティブがファイル先頭にあるファイルからインポートすることで、クライアントコンポーネント内で呼び出すことができます:
100+
クライアントコンポーネントでサーバー関数を定義することはできません。ただし、`"use server"`ディレクティブが先頭にあるファイルからインポートすることで、クライアントコンポーネントで呼び出すことができます:
101101

102102
```ts filename="app/actions.ts" switcher
103103
'use server'
@@ -133,16 +133,16 @@ export function Button() {
133133

134134
## サーバー関数の呼び出し
135135

136-
サーバー関数を呼び出す主な方法は2つあります
136+
サーバー関数を呼び出す主な方法は2つあります:
137137

138-
1. サーバー/クライアントコンポーネント内の[フォーム](#forms)
139-
2. クライアントコンポーネント内の[イベントハンドラー](#event-handlers)
138+
1. サーバー/クライアントコンポーネントでの[フォーム](#forms)使用
139+
2. クライアントコンポーネントでの[イベントハンドラ](#event-handlers)使用
140140

141141
### フォーム
142142

143143
ReactはHTMLの[`<form>`](https://react.dev/reference/react-dom/components/form)要素を拡張し、HTMLの`action`プロパティでサーバー関数を呼び出せるようにしています。
144144

145-
フォーム内で呼び出された場合、関数は自動的に[`FormData`](https://developer.mozilla.org/docs/Web/API/FormData/FormData)オブジェクトを受け取ります。ネイティブの[`FormData`メソッド](https://developer.mozilla.org/en-US/docs/Web/API/FormData#instance_methods)を使用してデータを抽出できます
145+
フォームで呼び出された場合、関数は自動的に[`FormData`](https://developer.mozilla.org/docs/Web/API/FormData/FormData)オブジェクトを受け取ります。ネイティブの[`FormData`メソッド](https://developer.mozilla.org/en-US/docs/Web/API/FormData#instance_methods)を使用してデータを抽出できます:
146146

147147
```tsx filename="app/ui/form.tsx" switcher
148148
import { createPost } from '@/app/actions'
@@ -179,8 +179,8 @@ export async function createPost(formData: FormData) {
179179
const title = formData.get('title')
180180
const content = formData.get('content')
181181

182-
// データを更新
183-
// キャッシュを再検証
182+
// データ更新
183+
// キャッシュ再検証
184184
}
185185
```
186186

@@ -191,16 +191,16 @@ export async function createPost(formData) {
191191
const title = formData.get('title')
192192
const content = formData.get('content')
193193

194-
// データを更新
195-
// キャッシュを再検証
194+
// データ更新
195+
// キャッシュ再検証
196196
}
197197
```
198198

199-
> **豆知識**`action`プロパティに渡された場合、サーバー関数は_サーバーアクション_とも呼ばれます
199+
> **補足:** `action`プロパティに渡された場合、サーバー関数は_サーバーアクション (Server Actions)_ とも呼ばれます
200200
201-
### イベントハンドラー
201+
### イベントハンドラ
202202

203-
`onClick`などのイベントハンドラーを使用して、クライアントコンポーネント内でサーバー関数を呼び出すことができます
203+
クライアントコンポーネントでは`onClick`などのイベントハンドラを使用してサーバー関数を呼び出せます
204204

205205
```tsx filename="app/like-button.tsx" switcher
206206
'use client'
@@ -252,25 +252,25 @@ export default function LikeButton({ initialLikes }) {
252252
}
253253
```
254254

255-
##
255+
## 使用例
256256

257-
### 保留状態の表示
257+
### 処理中状態の表示
258258

259-
サーバー関数の実行中、Reactの[`useActionState`](https://react.dev/reference/react/useActionState)フックを使用してローディングインジケーターを表示できます。このフックは`pending`ブール値を返します
259+
サーバー関数の実行中は、Reactの[`useActionState`](https://react.dev/reference/react/useActionState)フックを使用してローディングインジケータを表示できます。このフックは`pending`ブール値を返します:
260260

261261
```tsx filename="app/ui/button.tsx" switcher
262262
'use client'
263263

264-
import { useActionState } from 'react'
264+
import { useActionState, startTransition } from 'react'
265265
import { createPost } from '@/app/actions'
266266
import { LoadingSpinner } from '@/app/ui/loading-spinner'
267267

268268
export function Button() {
269269
const [state, action, pending] = useActionState(createPost, false)
270270

271271
return (
272-
<button onClick={async () => action()}>
273-
{pending ? <LoadingSpinner /> : '投稿を作成'}
272+
<button onClick={() => startTransition(action)}>
273+
{pending ? <LoadingSpinner /> : '投稿作成'}
274274
</button>
275275
)
276276
}
@@ -279,31 +279,31 @@ export function Button() {
279279
```jsx filename="app/ui/button.js" switcher
280280
'use client'
281281

282-
import { useActionState } from 'react'
282+
import { useActionState, startTransition } from 'react'
283283
import { createPost } from '@/app/actions'
284284
import { LoadingSpinner } from '@/app/ui/loading-spinner'
285285

286286
export function Button() {
287287
const [state, action, pending] = useActionState(createPost, false)
288288

289289
return (
290-
<button onClick={async () => action()}>
291-
{pending ? <LoadingSpinner /> : '投稿を作成'}
290+
<button onClick={() => startTransition(action)}>
291+
{pending ? <LoadingSpinner /> : '投稿作成'}
292292
</button>
293293
)
294294
}
295295
```
296296

297297
### キャッシュの再検証
298298

299-
更新を実行した後、サーバー関数内で[`revalidatePath`](/docs/app/api-reference/functions/revalidatePath)または[`revalidateTag`](/docs/app/api-reference/functions/revalidateTag)を呼び出すことでNext.jsのキャッシュを再検証し、更新されたデータを表示できます
299+
更新を実行した後、サーバー関数内で[`revalidatePath`](/docs/app/api-reference/functions/revalidatePath)または[`revalidateTag`](/docs/app/api-reference/functions/revalidateTag)を呼び出すことでNext.jsのキャッシュを再検証し、更新されたデータを表示できます:
300300

301301
```ts filename="app/lib/actions.ts" switcher
302302
import { revalidatePath } from 'next/cache'
303303

304304
export async function createPost(formData: FormData) {
305305
'use server'
306-
// データを更新
306+
// データ更新
307307
// ...
308308

309309
revalidatePath('/posts')
@@ -315,23 +315,23 @@ import { revalidatePath } from 'next/cache'
315315

316316
export async function createPost(formData) {
317317
'use server'
318-
// データを更新
318+
// データ更新
319319
// ...
320320
revalidatePath('/posts')
321321
}
322322
```
323323

324324
### リダイレクト
325325

326-
更新後にユーザーを別のページにリダイレクトしたい場合があります。サーバー関数内で[`redirect`](/docs/app/api-reference/functions/redirect)を呼び出すことでこれを行えます:
326+
更新後にユーザーを別のページにリダイレクトしたい場合があります。サーバー関数内で[`redirect`](/docs/app/api-reference/functions/redirect)を呼び出すことで実現できます:
327327

328328
```ts filename="app/lib/actions.ts" switcher
329329
'use server'
330330

331331
import { redirect } from 'next/navigation'
332332

333333
export async function createPost(formData: FormData) {
334-
// データを更新
334+
// データ更新
335335
// ...
336336

337337
redirect('/posts')
@@ -344,7 +344,7 @@ export async function createPost(formData: FormData) {
344344
import { redirect } from 'next/navigation'
345345

346346
export async function createPost(formData) {
347-
// データを更新
347+
// データ更新
348348
// ...
349349

350350
redirect('/posts')

0 commit comments

Comments
 (0)