mirror of
https://github.com/lucide-icons/lucide.git
synced 2025-12-16 16:57:44 +01:00
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.4.7 to 4.4.12. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v4.4.12/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v4.4.12/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Lucide Vue Next
Implementation of the lucide icon library for Vue 3 applications.
What is lucide? Read it here.
⚠️ This version of lucide is for Vue 3, For Vue 2 got to lucide-vue
Installation
yarn add lucide-vue-next
or
npm install lucide-vue-next
How to use
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a vue component.
Example
You can pass additional props to adjust the icon.
<template>
<Camera color="red" :size="32" />
</template>
<script>
// Returns Vue component
import { Camera } from 'lucide-vue-next';
export default {
name: 'My Component',
components: { Camera }
};
</script>
Props
| name | type | default |
|---|---|---|
size |
number | 24 |
color |
string | currentColor |
stroke-width |
number | 2 |
absolute-stroke-width |
boolean | false |
default-class |
string | lucide-icon |
Custom props
You can also pass custom props that will be added in the svg as attributes.
<template>
<Camera fill="red" />
</template>
One generic icon component
It is possible to create one generic icon component to load icons.
⚠️ Example below importing all EsModules, caution using this example, not recommended when you using bundlers, your application build size will grow strongly.
Icon Component Example
<template>
<component :is="icon" />
</template>
<script>
import * as icons from 'lucide-vue-next';
export default {
props: {
name: {
type: String,
required: true
}
},
computed: {
icon() {
return icons[this.name];
}
}
};
</script>
Then you can use it like this
<template>
<div id="app">
<Icon name="Airplay" />
</div>
</template>