Vue 3: добавление иконок с красивым шрифтом

Технические подробности:

  • Ubuntu 22.04
  • VueJS 3
  • Font-awsome
  • TypeScript

URLs:
https://www.npmjs.com/package/@fortawesome/vue-fontawesome
https://fontawesome.com/icons

Установите

Ваш package.json должен выглядеть следующим образом

"@fortawesome/fontawesome-svg-core": "^6.1.1",
"@fortawesome/free-regular-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.1",
"@fortawesome/vue-fontawesome": "^3.0.0-5",
Вход в полноэкранный режим Выйти из полноэкранного режима

Запустите эти команды (они могут содержать больше, чем вам нужно)

npm i --save @fortawesome/fontawesome-svg-core
npm i --save @fortawesome/free-solid-svg-icons
npm i --save @fortawesome/free-brands-svg-icons
npm i --save @fortawesome/free-regular-svg-icons
npm i --save @fortawesome/vue-fontawesome@prerelease
Войти в полноэкранный режим Выйти из полноэкранного режима

Обновите main.js

Ваш src/main.ts должен выглядеть следующим образом

import { createApp } from "vue";
import { createPinia } from "pinia";

import App from "./App.vue";
import router from "./router";

import { library } from "@fortawesome/fontawesome-svg-core";
import { faTrashCan } from "@fortawesome/free-solid-svg-icons"; <--- Add any icons you need here
import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";

const app = createApp(App);

library.add(faTrashCan);
app.component("font-awesome-icon", FontAwesomeIcon);

app.use(createPinia());
app.use(router);

app.mount("#app");
Войти в полноэкранный режим Выйти из полноэкранного режима

Использование

Файл, использующий иконку корзины, будет выглядеть следующим образом

<template>
  <div class="delete-item">
    <slot id="id"><font-awesome-icon :icon="['fas', 'trash-can']" /></slot>
  </div>
</template>

<style scoped>
.delete-item {
  margin: 1rem;
  padding: 0.5rem;
}
</style>
Войти в полноэкранный режим Выйти из полноэкранного режима

Результат

Оцените статью
Procodings.ru
Добавить комментарий