diff --git a/pages/_app.js b/pages/_app.js index c32f84d..35126d7 100644 --- a/pages/_app.js +++ b/pages/_app.js @@ -1,5 +1,6 @@ import '@/styles/globals.css' +import { ProgramContextProvider } from '../src/ProgramContext'; export default function App({ Component, pageProps }) { - return + return } diff --git a/pages/index.js b/pages/index.js index ee9b7c1..713ec8c 100644 --- a/pages/index.js +++ b/pages/index.js @@ -11,8 +11,20 @@ import NavDropdown from 'react-bootstrap/NavDropdown' import Row from 'react-bootstrap/Row' import Col from 'react-bootstrap/Col' import Button from 'react-bootstrap/Button'; +import { useRouter } from 'next/router'; +import { useContext } from 'react'; +import { ProgramContext } from '../src/ProgramContext'; export default function Home() { + const router = useRouter(); + const { updateProgram } = useContext(ProgramContext); + + const handleClick = () => { + const program = { name: 'John', age: 25 }; + updateProgram(program); + router.push('/runner'); + }; + const [instructionStatus, setInstructionStatus] = useState([]); const geraTabelaParaInserirInstrucoes = (nInst) => { @@ -109,9 +121,7 @@ export default function Home() {

Instructions

- - - + diff --git a/pages/runner.js b/pages/runner.js index dc894c2..843c46a 100644 --- a/pages/runner.js +++ b/pages/runner.js @@ -9,8 +9,12 @@ import Row from 'react-bootstrap/Row' import Col from 'react-bootstrap/Col' import { useState } from 'react'; import Button from 'react-bootstrap/Button'; +import { useContext } from 'react'; +import { ProgramContext } from '../src/ProgramContext'; export default function Home() { + const { program } = useContext(ProgramContext); + let baseI = { issue: null, exeCompleta: null, diff --git a/src/ProgramContext.js b/src/ProgramContext.js new file mode 100644 index 0000000..afda6e8 --- /dev/null +++ b/src/ProgramContext.js @@ -0,0 +1,17 @@ +import { createContext, useState } from 'react'; + +export const ProgramContext = createContext(null); + +export const ProgramContextProvider = ({ children }) => { + const [program, setProgram] = useState({}); + + const updateProgram = (newObject) => { + setProgram(newObject); + }; + + return ( + + {children} + + ); +};