import { useEffect, useRef } from 'react' import type { NextPage } from 'next' import Head from 'next/head' import { useRouter } from 'next/router' import styles from '../styles/Editor.module.css' import header_styles from '../styles/Header.module.css' const Home: NextPage = () => { const codeRef = useRef(null) const router = useRouter() const save = () => { fetch('/api/new', { 'method': 'POST', 'headers': { 'Content-Type': 'application/json' }, 'body': JSON.stringify({ data: codeRef.current?.value }) }).then(res => res.json()) .then(({ id }) => router.push(`/${id}`)) .catch(() => router.push('/')) } useEffect(() => { const listener = (event : KeyboardEvent) => { if (event.code === "KeyS" && event.ctrlKey === true) { event.preventDefault() save() } } document.addEventListener('keydown', listener) return () => { document.removeEventListener('keydown', listener) } }, [save]) return (
fastbin
fastbin
router.push('/')} >note_add
save
{">"}
) } export default Home