Skip to content

Commit da5284e

Browse files
committedMar 11, 2024··
docs(example): fix optimistic hook example
1 parent 9b86935 commit da5284e

File tree

4 files changed

+12
-6
lines changed

4 files changed

+12
-6
lines changed
 

‎packages/example-app/src/app/(examples)/optimistic-hook/addlikes-action.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { z } from "zod";
66

77
let likes = 42;
88

9-
export const getLikes = () => likes;
9+
export const getLikes = async () => likes;
1010

1111
const incrementLikes = (by: number) => {
1212
likes += by;

‎packages/example-app/src/app/(examples)/optimistic-hook/addlikes-form.tsx

+5-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,11 @@ const AddLikesForm = ({ likesCount }: Props) => {
7474
Reset
7575
</StyledButton>
7676
</form>
77-
<ResultBox result={optimisticData} status={status} />
77+
<ResultBox
78+
result={optimisticData}
79+
status={status}
80+
customTitle="Optimistic data:"
81+
/>
7882
</>
7983
);
8084
};

‎packages/example-app/src/app/(examples)/optimistic-hook/page.tsx

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ import { StyledHeading } from "@/app/_components/styled-heading";
22
import { getLikes } from "./addlikes-action";
33
import AddLikeForm from "./addlikes-form";
44

5-
export default function OptimisticHook() {
6-
const likesCount = getLikes();
5+
export default async function OptimisticHookPage() {
6+
const likesCount = await getLikes();
7+
78
return (
89
<main className="w-96 max-w-full px-4">
910
<StyledHeading>Action using optimistic hook</StyledHeading>

‎packages/example-app/src/app/_components/result-box.tsx

+3-2
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@ import { HookActionStatus } from "next-safe-action/hooks";
33
type Props = {
44
result: any;
55
status?: HookActionStatus;
6+
customTitle?: string;
67
};
78

8-
export function ResultBox({ result, status }: Props) {
9+
export function ResultBox({ result, status, customTitle }: Props) {
910
return (
1011
<div className="mt-8">
1112
{status ? (
1213
<p className="text-lg font-semibold">Execution status: {status}</p>
1314
) : null}
14-
<p className="text-lg font-semibold">Action result:</p>
15+
<p className="text-lg font-semibold">{customTitle || "Action result:"}</p>
1516
<pre className="mt-4">{JSON.stringify(result, null, 1)}</pre>
1617
</div>
1718
);

0 commit comments

Comments
 (0)
Please sign in to comment.