Oversigt

React er et JavaScript-bibliotek til at bygge brugergrænseflader. Denne skabelon bruger Create React App (CRA), som giver en behagelig opsætning til at lære React og et solidt fundament for single-page-applikationer.

Før du begynder
Sørg for at have dit dashboard åbent - du skal bruge de Git-loginoplysninger, der vises der. Denne skabelon inkluderer React 18, Tailwind CSS, Redux Toolkit og React Router.

Kom godt i gang

1

Opret repository fra skabelon

Gå til fanen Tools & Deployment på dit dashboard. Klik på "New Repository", vælg React-skabelonen i dropdown-menuen, indtast et repository-navn og et subdomæne, og klik på "Create Repository".

2

Klon dit repository

git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
3

Installer afhængigheder

npm install
4

Start udviklingsserver

npm start

Åbn http://localhost:3000 i din browser.

5

Build & push

npm run build
git add .
git commit -m "Initial setup"
git push origin main
Hver push til Git udruller automatisk din applikation. Tjek din Module Work URL på dashboardet for at se din live-side.

Lokal udvikling med Docker

Hvis du ikke har Node.js installeret lokalt, kan du bruge Docker til at køre React-kommandoer.

Hvad er Docker?
Docker opretter isolerede "containere" med al den software, du har brug for (Node.js, npm), uden at installere dem på din computer. Tænk på det som en letvægts virtuel maskine.

Forudsætninger

Installer Docker Desktop til dit operativsystem (Windows, Mac eller Linux).

Kør kommandoer med Docker

# Run npm install
docker run --rm -v $(pwd):/app -w /app node:18 npm install

# Run development server (accessible at localhost:3000)
docker run --rm -v $(pwd):/app -w /app -p 3000:3000 node:18 npm start

# Build for production
docker run --rm -v $(pwd):/app -w /app node:18 npm run build
Bemærk
Docker er valgfrit til lokal udvikling. NStrim-platformen håndterer udrulning automatisk - du behøver kun Docker, hvis du vil køre kommandoer lokalt uden Node.js installeret.

Projektstruktur

Forstå hvor filerne er placeret:

├── src/
│   ├── components/           # React-komponenter
│   ├── hooks/                # Brugerdefinerede React-hooks
│   ├── pages/                # Side-komponenter
│   ├── services/             # API-services
│   ├── store/                # Redux store-konfiguration
│   ├── App.js                # Rod-komponent
│   ├── App.css               # App-styles
│   └── index.js              # Applikationens entry point
├── public/                   # Statiske filer
├── package.json              # Afhængigheder og scripts
├── tailwind.config.js        # Tailwind CSS-konfiguration
└── Dockerfile                # Docker build-konfiguration
        

Almindelige opgaver

Opret en komponent

Opret .js-filer i src/components/:

// src/components/Button.js
export default function Button({ label, onClick }) {
  return (
    <button
      className="bg-blue-500 text-white px-4 py-2 rounded"
      onClick={onClick}
    >
      {label}
    </button>
  );
}

Brug af React Hooks

Almindelige hooks til state og side effects:

import { useState, useEffect } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  useEffect(() => {
    document.title = `Count: ${count}`;
  }, [count]);

  return (
    <button onClick={() => setCount(count + 1)}>
      Count: {count}
    </button>
  );
}

Brug af React Router

React Router er forudkonfigureret til navigation:

import { BrowserRouter, Routes, Route, Link } from 'react-router-dom';
import Home from './pages/Home';
import About from './pages/About';

function App() {
  return (
    <BrowserRouter>
      <nav>
        <Link to="/">Home</Link>
        <Link to="/about">About</Link>
      </nav>
      <Routes>
        <Route path="/" element={<Home />} />
        <Route path="/about" element={<About />} />
      </Routes>
    </BrowserRouter>
  );
}

Brug af Tailwind CSS

Tailwind CSS er forudkonfigureret. Brug klasserne direkte i din JSX:

<div className="bg-blue-500 text-white p-4 rounded-lg">
  Hello Tailwind!
</div>

Nyttige kommandoer

npm start Start udviklingsserver (port 3000)
npm run build Opret optimeret produktions-build
npm test Kør test-suite
npm run eject Eject fra CRA (envejs-operation)

Fejlfinding

npm install fejler med tilladelsesfejl

Årsag: Tilladelsesproblemer med npm-cache eller node_modules.

Løsning: Slet node_modules-mappen og package-lock.json, og kør derefter npm install igen.

Port 3000 er allerede i brug

Årsag: En anden proces bruger port 3000.

Løsning: Vælg en anden port: PORT=3001 npm start eller stop den anden proces.

Komponent re-renderer ikke

Årsag: Mutering af state i stedet for at oprette ny state.

Løsning: Opret altid nye objekter/arrays, når du opdaterer state. Brug spread-operatoren: setItems([...items, newItem])

Ændringer vises ikke i browseren

Årsag: Browser-cache eller hot reload virker ikke.

Løsning: Hard refresh (Ctrl+Shift+R eller Cmd+Shift+R) eller genstart udviklingsserveren.

Build fejler efter udrulning

Årsag: Build-fejl eller manglende afhængigheder.

Løsning: Kør npm run build lokalt først for at tjekke for fejl, før du pusher.

Udrulnings-workflow

Hver gang du pusher kode til Git, bygges og udrulles din applikation automatisk:

Kodeændring git push npm run build Udrul statiske filer Live!

Din udrullede applikations-URL har dette format:

https://<your-subdomain>-<repo-name>.<session-domain>

Eksempel: https://student01-module-a.demo.nstrim.app

For mere information, besøg den officielle React-dokumentation.