diff --git a/react-advanced-tag1/src/App.tsx b/react-advanced-tag1/src/App.tsx index 3d7ded3..dd728ff 100644 --- a/react-advanced-tag1/src/App.tsx +++ b/react-advanced-tag1/src/App.tsx @@ -1,35 +1,12 @@ -import { useState } from 'react' -import reactLogo from './assets/react.svg' -import viteLogo from '/vite.svg' import './App.css' +import Heading from './components/globals/Heading' +import MainLayout from './layouts/MainLayout' function App() { - const [count, setCount] = useState(0) - return ( - <> -
- - Vite logo - - - React logo - -
-

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

-
-

- Click on the Vite and React logos to learn more -

- - ) + return + + } export default App diff --git a/react-advanced-tag1/src/components/Footer.tsx b/react-advanced-tag1/src/components/Footer.tsx new file mode 100644 index 0000000..5f22145 --- /dev/null +++ b/react-advanced-tag1/src/components/Footer.tsx @@ -0,0 +1,9 @@ +function Footer() { + return ( + + ); +} + +export default Footer; \ No newline at end of file diff --git a/react-advanced-tag1/src/components/Header/Navigation.tsx b/react-advanced-tag1/src/components/Header/Navigation.tsx new file mode 100644 index 0000000..dd76375 --- /dev/null +++ b/react-advanced-tag1/src/components/Header/Navigation.tsx @@ -0,0 +1,9 @@ +export default function Navigation () { + return ( + ); +} \ No newline at end of file diff --git a/react-advanced-tag1/src/components/Header/index.tsx b/react-advanced-tag1/src/components/Header/index.tsx new file mode 100644 index 0000000..e03b1af --- /dev/null +++ b/react-advanced-tag1/src/components/Header/index.tsx @@ -0,0 +1,12 @@ +import Navigation from "./Navigation"; + +const Header = () => { + return ( +
+

My Application

+ +
+ ); +} + +export default Header; \ No newline at end of file diff --git a/react-advanced-tag1/src/components/globals/Heading.tsx b/react-advanced-tag1/src/components/globals/Heading.tsx new file mode 100644 index 0000000..839a3cf --- /dev/null +++ b/react-advanced-tag1/src/components/globals/Heading.tsx @@ -0,0 +1,7 @@ +export default function Heading({title = "Hallo Teilnehmer"}: {title?: string}): React.ReactElement { + return ( +

+ {title} +

+ ); +} \ No newline at end of file diff --git a/react-advanced-tag1/src/layouts/MainLayout.tsx b/react-advanced-tag1/src/layouts/MainLayout.tsx new file mode 100644 index 0000000..5f3ba07 --- /dev/null +++ b/react-advanced-tag1/src/layouts/MainLayout.tsx @@ -0,0 +1,12 @@ +import Footer from "../components/Footer"; +import Header from "../components/Header"; + +export default function MainLayout({children}: {children: React.ReactNode | React.ReactElement | React.ReactElement[]}): React.ReactElement { + return ( + <> +
+ {children} +