Vue-komponenter som bygger på NVE Designsystem, men som er for komplekse til å implementeres som rene web-komponenter.
npm install @nve-org/vue-componentsBiblioteket støtter både global registrering (hele pakken) og lokal import (enkeltkomponenter). Dette gir fleksibilitet i forskjellige prosjektstørrelser og behov.
Registrerer alle komponenter automatisk globalt, slik at du slipper å importere dem én og én.
// main.ts eller main.js
import { createApp } from 'vue'
import App from './App.vue'
import NVEComponents from '@nve-org/vue-components'
const app = createApp(App)
app.use(NVEComponents)
app.mount('#app')<template>
<NveTable :headers="headers" :data="countries" />
</template>
<script setup lang="ts">
// Ingen import av NveTable nødvendig!
</script>Bare komponentene du faktisk bruker blir inkludert i bundlen – ideelt for optimal ytelse.
<template>
<NveTable :headers="headers" :data="countries" />
</template>
<script setup lang="ts">
import { NveTable } from '@nve-org/vue-components'
</script><script setup lang="ts">
import { ref } from 'vue'
import { NveTable } from '@nve-org/vue-components'
type Country = { name: string; code: string; capital: string }
const headers = ref([
{ key: 'name', title: 'Navn' },
{ key: 'code', title: 'Kode' },
{ key: 'capital', title: 'Hovedstad' }
])
const countries = ref<Country[]>([
{ name: 'Norge', code: 'NO', capital: 'Oslo' },
{ name: 'Sverige', code: 'SE', capital: 'Stockholm' },
{ name: 'Danmark', code: 'DK', capital: 'København' }
])
</script>
<template>
<NveTable :headers="headers" :data="countries" :item-id="(item) => item.code" striped />
</template>MIT © NVE
Hvis du skal bidra eller bygge ut biblioteket: se CONTRIBUTING.md