@nve-org/vue-components

NVE's standard komponentbibliotek er implementert som web-components. Mer info om dette finner du her: https://designsystem.nve.no/ . Dette prosjektet inneholder komponenter som bygger på NVE sitt designsystem, men som blir ansett som for komplekse til å
12,966
Install
npm install @nve-org/vue-components
Latest Version:2.2.1
Vue:3
License:MIT
Last Updated:Oct 7, 2026
Links: GitHub  ·  npm
Maintainer: tomped-nve

@nve-org/vue-components

Vue-komponenter som bygger på NVE Designsystem, men som er for komplekse til å implementeres som rene web-komponenter.

Installasjon

npm install @nve-org/vue-components

Bruk i Vue 3-prosjekter

Importstruktur: Global vs. Lokal bruk

Biblioteket støtter både global registrering (hele pakken) og lokal import (enkeltkomponenter). Dette gir fleksibilitet i forskjellige prosjektstørrelser og behov.

Alternativ 1: Global registrering (app.use)

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')
Bruk i komponenter uten import
<template>
  <NveTable :headers="headers" :data="countries" />
</template>

<script setup lang="ts">
// Ingen import av NveTable nødvendig!
</script>
Alternativ 2: Lokal import (tree-shaking)

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>

Eksempel: Bruk av NveTable

<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>

Lisens

MIT © NVE

For utviklere

Hvis du skal bidra eller bygge ut biblioteket: se CONTRIBUTING.md

Related Packages

@fkui/vue

Vue implementation of FKUI components

36,263 56
@fkui/vue-labs

Experimental and unstable FKUI components

10,345 56
@fkui/user-lib-vue

Vue implementation of custom user components

5,839 2
@oslokommune/punkt-vue

Vue komponentbibliotek til Punkt, designsystem for Oslo kommune

32,487
@dcodegroup-au/dsg-vue

Front-end Vue/Tailwind DSG for UntitledUI.

17,776

Version History

Version Released License
2.2.1 MIT
2.2.0 MIT
2.1.1 MIT
2.1.0 MIT
2.0.0 MIT