Vue3 Icons
方案来自:react-icons
Include popular icons in your Vue3 projects easily with vue3-icons
, which utilizes ES6 imports that allows you to include only the icons that your project is using.
Installation (for standard modern project)
pnpm add vue3-icons
# or
npm install vue3-icons --save
example usage
<script lang="ts" setup>
import { FaBeer } from 'vue-icons/fa';
</script>
<template>
<FaBeer />
</template>
Icons
You can add more icons by submitting pull requests or creating issues.
Configuration
You can configure vue3-icons props using vue3 Provider API.
import { IconContextProvider } from "vue3-icons";
<IconContextProvider :value="{ color: 'blue', className: 'global-class-name' }">
<div>
<FaFolder />
</div>
</IconContext.Provider>;
Key | Default | Notes |
---|---|---|
color |
undefined (inherit) |
|
size |
1em |
|
className |
undefined |
|
style |
undefined |
Can overwrite size and color |
attr |
undefined |
Overwritten by other attributes |
title |
undefined |
Icon description for accessibility |
Contributing
./build-script.sh
will build the whole project. See also CI scripts for more information.
Development
yarn
cd packages/vue3-icons
yarn fetch # fetch icon sources
yarn build
Preview
The preview site is the vue3-icons
website.
cd packages/vue3-icons
yarn fetch
yarn build
cd ../preview
yarn start
Demo
The demo is a vue3 boilerplate with vue3-icons
added as a dependency for easy testing.
cd packages/vue3-icons
yarn fetch
yarn build
cd ../demo
yarn start
Why Vue3 SVG components instead of fonts?
SVG is supported by all major browsers. With vue-icons
, you can serve only the needed icons instead of one big font file to the users, helping you to recognize which icons are used in your project.
Licence
MIT
- Icons are taken from the other projects so please check each project licences accordingly.