Översikt

Vue.js är ett progressivt JavaScript-ramverk för att bygga användargränssnitt. Det är utformat för att kunna införas stegvis och fokuserar på vy-lagret, vilket gör det enkelt att integrera med andra bibliotek eller befintliga projekt.

Innan du börjar
Se till att din dashboard är öppen – du kommer att behöva Git-uppgifterna som visas där. Den här mallen innehåller Vue 3, Tailwind CSS 4, Pinia för state-hantering och Vue Router.

Kom igång

1

Skapa repository från mall

Gå till fliken Tools & Deployment i din dashboard. Klicka på knappen "New Repository", välj Vue.js-mallen från rullgardinsmenyn, ange ett repository-namn och en subdomän och klicka sedan på "Create Repository".

2

Klona ditt repository

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

Installera beroenden

npm install
4

Starta utvecklingsservern

npm run dev

Öppna http://localhost:4200 i din webbläsare.

5

Bygg och pusha

npm run build
git add .
git commit -m "Initial setup"
git push origin main
Varje push till Git distribuerar din applikation automatiskt. Kontrollera din Module Work URL i dashboarden för att se din live-sajt.

Lokal utveckling med Docker

Om du inte har Node.js installerat lokalt kan du använda Docker för att köra Vue-kommandon. Projektet innehåller en Dockerfile för produktionsbyggen med nginx.

Vad är Docker?
Docker skapar isolerade "containrar" med all programvara du behöver (Node.js, npm) utan att installera dem på din dator. Tänk på det som en lättviktig virtuell maskin.

Förutsättningar

Installera Docker Desktop för ditt operativsystem (Windows, Mac eller Linux).

Köra kommandon med Docker

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

# Run development server (accessible at localhost:4200)
docker run --rm -v $(pwd):/app -w /app -p 4200:4200 node:lts-alpine npm run dev

# Build for production
docker run --rm -v $(pwd):/app -w /app node:lts-alpine npm run build
Obs
Docker är valfritt för lokal utveckling. NStrim-plattformen hanterar distribution automatiskt – du behöver bara Docker om du vill köra kommandon lokalt utan att ha Node.js installerat.

Projektstruktur

Förstå var filerna finns:

├── src/
│   ├── assets/               # Statiska tillgångar (bilder, typsnitt)
│   ├── components/           # Vue-komponenter
│   ├── views/                # Sidkomponenter
│   ├── router/               # Vue Router-konfiguration
│   ├── stores/               # Pinia-stores
│   ├── App.vue               # Rotkomponent
│   └── main.js               # Applikationens ingångspunkt
├── public/                   # Publika statiska filer
├── index.html                # HTML-ingångspunkt
├── vite.config.js            # Vite-konfiguration
├── package.json              # Beroenden och skript
└── Dockerfile                # Docker-byggkonfiguration
        

Vanliga uppgifter

Skapa en komponent

Skapa .vue-filer i src/components/:

<!-- src/components/Button.vue -->
<script setup>
defineProps({
  label: String
});

const emit = defineEmits(['click']);
</script>

<template>
  <button
    class="bg-blue-500 text-white px-4 py-2 rounded"
    @click="emit('click')"
  >
    {{ label }}
  </button>
</template>

Lägga till en rutt

Redigera src/router/index.js:

import { createRouter, createWebHistory } from 'vue-router';
import Home from '../views/Home.vue';
import About from '../views/About.vue';

const router = createRouter({
  history: createWebHistory(),
  routes: [
    { path: '/', component: Home },
    { path: '/about', component: About }
  ]
});

export default router;

Använda Pinia-store

Skapa en store i src/stores/:

// src/stores/counter.js
import { defineStore } from 'pinia';

export const useCounterStore = defineStore('counter', {
  state: () => ({ count: 0 }),
  actions: {
    increment() { this.count++ },
    decrement() { this.count-- }
  }
});

Använda Tailwind CSS

Tailwind CSS 4 är förkonfigurerat. Använd klasser direkt i dina mallar:

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

Användbara kommandon

npm run dev Starta utvecklingsserver (port 4200)
npm run build Bygg för produktion
npm run preview Förhandsgranska produktionsbygget lokalt
npm run test:unit Kör enhetstester med Vitest
npm run lint Kontrollera och fixa kodstil
npm run format Formatera kod med Prettier

Felsökning

npm install fails with permission errors

Orsak: Behörighetsproblem med npm-cachen eller node_modules.

Lösning: Ta bort mappen node_modules och package-lock.json och kör sedan npm install igen.

Port 4200 already in use

Orsak: En annan process använder port 4200.

Lösning: Använd en annan port: npm run dev -- --port 3000 eller stoppa den andra processen.

Component not updating

Orsak: Reaktivitet är inte korrekt uppsatt.

Lösning: Använd ref() för primitiver och reactive() för objekt. Kom åt ref-värden med .value i script, men inte i mallen.

Router not working

Orsak: RouterView finns inte i App.vue eller routern är inte registrerad.

Lösning: Säkerställ att <RouterView /> finns i App.vue och att routern läggs till med app.use(router) i main.js.

Build fails after deployment

Orsak: Byggfel eller saknade beroenden.

Lösning: Kör npm run build lokalt först för att kontrollera fel innan du pushar.

Distributionsflöde

Varje gång du pushar kod till Git byggs och distribueras din applikation automatiskt:

Kodändring git push npm run build Distribuera till nginx Live!

Din distribuerade applikations-URL följer detta format:

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

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

För mer information, besök den officiella Vue.js-dokumentationen.