Lewati ke konten

useIcons

Menggantikan set ikon yang digunakan secara internal di setiap komponen.

Setiap ikon internal yang dirender pustaka ini sendiri - spinner loading milik button, glyph remove milik chip, chevron dropdown milik select, ikon success/danger milik toast, dan seterusnya - di-resolve dari satu registry tujuan semantik, useIcons(), alih-alih di-hardcode per komponen. Prop name yang Anda atur sendiri (icon milik SButton, icon milik SInput, ...) tidak terpengaruh - registry ini hanya untuk ikon yang dirender komponen sendiri.

Penggunaan

Gantikan key apa pun secara global di app.config.ts:

ts
export default defineAppConfig({
  selaras: {
    icons: {
      close: 'lucide:x',
      loading: 'lucide:loader-2',
    },
  },
})

Hanya key yang Anda atur yang digantikan; sisanya mempertahankan default Hugeicons-nya. Ini mengubah setiap komponen yang menggunakan key itu sekaligus - mengatur close me-reskin ikon dismiss pada Modal, Toast, tombol clear milik Input, dan tombol remove milik Chip sekaligus, alih-alih membutuhkan override terpisah untuk masing-masing.

Registry

KunciDefaultDigunakan oleh
edithugeicons:pencil-edit-01Kontrol edit milik Editable
closehugeicons:cancel-01Modal, Toast, Chip, tombol clear milik Input, CommandPalette, kontrol cancel milik Editable
checkhugeicons:tick-02Checkbox, penanda item terpilih milik Select, kontrol save milik Editable
indeterminatehugeicons:minus-signState indeterminate milik Checkbox
chevronUphugeicons:arrow-up-01Accordion, stepper milik InputNumber
chevronDownhugeicons:arrow-down-01Select, Autocomplete, DatePicker, stepper milik InputNumber
chevronRighthugeicons:arrow-right-01Tree, NavigationMenu
chevronLefthugeicons:arrow-left-01Pagination, nav bulan milik DatePicker
chevronsLefthugeicons:previousKontrol halaman pertama milik Pagination
chevronsRighthugeicons:nextKontrol halaman terakhir milik Pagination
loadinghugeicons:loading-02Spinner loading milik Button/Switch
searchhugeicons:search-01CommandPalette, Autocomplete
sortUnsortedhugeicons:sorting-05Header kolom sortable milik Table saat tidak di-sort
sortAscendinghugeicons:arrow-up-02State sort menaik milik Table
sortDescendinghugeicons:arrow-down-02State sort menurun milik Table
filterhugeicons:filterTrigger filter kolom milik Table
columnshugeicons:table-columns-splitKontrol toggle kolom milik Table
copyhugeicons:copyCodeButton
lightModehugeicons:sun-01ColorModeToggle
darkModehugeicons:moonColorModeToggle
calendarhugeicons:calendar-01DatePicker
clockhugeicons:clock-01Time picker milik DatePicker
plushugeicons:plus-signStepper milik InputNumber
minushugeicons:minus-signStepper milik InputNumber
successhugeicons:checkmark-circle-01Toast, Alert
dangerhugeicons:cancel-circleToast, Alert
warninghugeicons:alert-circleToast, Alert
infohugeicons:information-circleToast, Alert
userhugeicons:userFallback milik Avatar
maximizehugeicons:fullscreenToggle fullscreen milik Modal
minimizehugeicons:collapseToggle fullscreen milik Modal
starhugeicons:starRating
uploadhugeicons:upload-01FileUpload
filehugeicons:file-01FileUpload, FileTree
folderhugeicons:folder-01FileTree
folderOpenhugeicons:folder-openFileTree
morehugeicons:more-horizontalTrigger row-actions milik Table
sidebarCollapsehugeicons:sidebar-left-01DashboardSidebarToggle

API

ts
function useIcons(): ComputedRef<IconRegistry>

Mengembalikan registry gabungan (override app.config.selaras.icons Anda diterapkan di atas default Hugeicons di atas) - gunakan ini jika Anda membangun komponen sendiri dan ingin ia menghormati override yang sama yang sudah diatur consumer, alih-alih meng-hardcode nama ikon langsung:

vue
<script setup lang="ts">
const icons = useIcons()
</script>

<template>
  <SIcon :name="icons.close" />
</template>