4466ba436b
## Description This PR ensures that the default prettier config is used for examples and templates. This config is compatible with `prettier@3` as well (upgrading prettier is bigger change that can be a future PR). ## Changes - Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will be needed upgrading to prettier@3) - Added `examples/.prettierrc.json` with default config (this will change every example) - Added `packages/create-next-app/templates/.prettierrc.json` with default config (this will change every template) ## Related - Fixes #54402 - Closes #54409
35 lines
1,002 B
JavaScript
35 lines
1,002 B
JavaScript
import { useRouter } from "next/router";
|
|
import Link from "next/link";
|
|
import { format } from "url";
|
|
|
|
let counter = 0;
|
|
|
|
export async function getServerSideProps() {
|
|
counter++;
|
|
return { props: { initialPropsCounter: counter } };
|
|
}
|
|
|
|
export default function Index({ initialPropsCounter }) {
|
|
const router = useRouter();
|
|
const { pathname, query } = router;
|
|
const reload = () => {
|
|
router.push(format({ pathname, query }));
|
|
};
|
|
const incrementCounter = () => {
|
|
const currentCounter = query.counter ? parseInt(query.counter) : 0;
|
|
const href = `/?counter=${currentCounter + 1}`;
|
|
|
|
router.push(href, href, { shallow: true });
|
|
};
|
|
|
|
return (
|
|
<div>
|
|
<h2>This is the Home Page</h2>
|
|
<Link href="/about">About</Link>
|
|
<button onClick={reload}>Reload</button>
|
|
<button onClick={incrementCounter}>Change State Counter</button>
|
|
<p>"getServerSideProps" ran for "{initialPropsCounter}" times.</p>
|
|
<p>Counter: "{query.counter || 0}".</p>
|
|
</div>
|
|
);
|
|
}
|