This commit is contained in:
Philippe Torrel
2026-10-30 09:31:44 +01:00
parent e955f3fc4f
commit 2426cd56bc
9 changed files with 16 additions and 12 deletions
+11 -8
View File
@@ -582,7 +582,7 @@ Projektarbeit
**Übungen:** **Übungen:**
Übung 08 - 11 Übung 08 - 10
--- ---
@@ -595,7 +595,7 @@ Projektarbeit
**Übungen:** **Übungen:**
Übung 12 - 13 Übung 11 - 14
--- ---
@@ -607,6 +607,8 @@ Projektarbeit
- Hooks in React. `useState`, `useReducer`, `useContext`, `useId`. - Hooks in React. `useState`, `useReducer`, `useContext`, `useId`.
- Routing in React - Routing in React
- Verschachtelte Routen und Layout-Komponenten - Verschachtelte Routen und Layout-Komponenten
- Formulare in React
- Validierung classic
**Übungen:** **Übungen:**
@@ -618,9 +620,9 @@ Projektarbeit
**Inhalt:** **Inhalt:**
- Verschachtelte Routen und Layout-Komponenten - Validierung mit `react-hook-form` und Schema Objekten
- Formulare in React - Hook: `useEffect`. Arbeiten mit asynchronen Daten.
- Validierung classic - Asynchron arbeiten mit axios/ fetch
**Übungen:** **Übungen:**
@@ -632,9 +634,9 @@ Projektarbeit
**Inhalt:** **Inhalt:**
- Validierung mit `react-hook-form` und Schema Objekten - Hook: `useEffect`, `useRef`, `useCallback`. Arbeiten mit asynchronen Daten.
- Hook: `useEffect`. Arbeiten mit asynchronen Daten. - AbortController, loading und error hinzufügen.
- Asynchron arbeiten mit axios/ fetch - Testing in React.
**Übungen:** **Übungen:**
@@ -648,6 +650,7 @@ Projektarbeit
- Aktualisierung von Node - Aktualisierung von Node
- Testing in React - Testing in React
- Einführung JS/TS Debugging & Testing
- **Exkurs: Sass 7 on 1 Struktur** - **Exkurs: Sass 7 on 1 Struktur**
- **Optimierung vom ProduktManager über KI** - **Optimierung vom ProduktManager über KI**
- **ProduktManager wird in TS migriert** - **ProduktManager wird in TS migriert**
@@ -35,6 +35,7 @@ const ExampleUseCallback = (props) => {
<li <li
key={`list-item-product-${idx}`} // key={`list-item-product-${idx}`} //
className="list-group-item list-item-product" className="list-group-item list-item-product"
data-id={product.id}
onClick={(e) => { onClick={(e) => {
handleClick(e, product.id); handleClick(e, product.id);
}}> }}>
@@ -21,7 +21,7 @@
"@types/react-dom": "^19.3.0", "@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.2", "@vitejs/plugin-react": "^6.1.2",
"jsdom": "^30.1.3", "jsdom": "^30.1.3",
"oxlint": "^1.89.0", "oxlint": "^1.90.0",
"sass-embedded": "^1.107.0", "sass-embedded": "^1.107.0",
"vite": "^8.3.5", "vite": "^8.3.5",
"vitest": "^5.0.5" "vitest": "^5.0.5"
@@ -25,7 +25,7 @@
"@types/react-dom": "^19.3.0", "@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.2", "@vitejs/plugin-react": "^6.1.2",
"jsdom": "^30.1.3", "jsdom": "^30.1.3",
"oxlint": "^1.89.0", "oxlint": "^1.90.0",
"sass-embedded": "^1.107.0", "sass-embedded": "^1.107.0",
"vite": "^8.3.5", "vite": "^8.3.5",
"vitest": "^5.0.5" "vitest": "^5.0.5"
@@ -1,5 +1,5 @@
import { render, screen } from '@testing-library/react'; import { render, screen } from '@testing-library/react';
import ExampleComponent from '../components/ExampleComponent'; import ExampleComponent from '../components/examples/ExampleComponent';
// import nicht notwendig ( Findet automatisch durch globale Setting statt) // import nicht notwendig ( Findet automatisch durch globale Setting statt)
import { test, it, expect } from 'vitest'; import { test, it, expect } from 'vitest';
@@ -9,7 +9,7 @@ export default defineConfig({
// Vitest configuration // Vitest configuration
globals: true, // make the global objects available in the test environment globals: true, // make the global objects available in the test environment
environment: 'jsdom', // use jsdom as the test environment environment: 'jsdom', // use jsdom as the test environment
setupFiles: './src/test/setup.js', // if you have a setup file setupFiles: './src/tests/setup.js', // if you have a setup file
// more options here // more options here
}, },
}); });