본문으로 바로가기 본문 바로가기
WIKI 기술 지식 베이스

Icon 아이콘

원문 보기 위키 갱신

아이콘을 표시할 때 사용하는 아이콘 컴포넌트예요.

출처: 문서

본문

아이콘을 표시하는 데 사용해요.

언제 사용하나요?

아이콘을 표시해야 할 때 사용해요.

모든 내장 아이콘은 DevUI 공식 사이트에서 확인할 수 있어요: https://devui.design/icon/ruleResource

기본 사용법

:::demo name 속성으로 표시할 아이콘을 지정해요. DevUI 아이콘 라이브러리의 아이콘과 URL 형태의 아이콘을 모두 지원해요.

<template>
  <div class="demo-spacing">
    <d-icon name="like"></d-icon>
    <d-icon name="https://devui.design/components/assets/logo.svg" size="16px"></d-icon>
  </div>
</template>

:::

설명 정보 붙이기

:::demo prefix와 suffix로 각각 아이콘 앞뒤에 들어갈 내용을 정할 수 있어요. operable은 인터랙션 가능한 아이콘으로 만들고, disabled는 비활성 상태로, rotate는 아이콘 회전 각도 또는 자동 회전을 설정해요.

<template>
  <d-icon name="setting" operable>
    <template #prefix>
      <span>设置</span>
    </template>
  </d-icon>
  <br />
  <br />
  <d-icon name="setting" operable>
    <template #suffix>
      <span>设置</span>
    </template>
  </d-icon>
  <br />
  <br />
  <d-icon name="https://devui.design/components/assets/logo.svg" size="16px" operable>
    <template #suffix>
      <span>Logo</span>
    </template>
  </d-icon>
  <br />
  <br />
  <d-icon name="refresh" rotate="infinite" operable>
    <template #suffix>
      <span>运行中</span>
    </template>
  </d-icon>
  <br />
  <br />
  <d-icon name="edit" :rotate="180">
    <template #suffix>
      <span>编辑</span>
    </template>
  </d-icon>
  <br />
  <br />
  <d-icon name="edit" disabled>
    <template #suffix>
      <span>无权编辑</span>
    </template>
  </d-icon>
</template>

:::

색상

:::demo color 속성으로 아이콘 색을 지정해요.

<template>
  <div class="demo-spacing">
    <d-icon name="right-o" color="#3DCCA6"></d-icon>
    <d-icon name="error-o" color="#F66F6A"></d-icon>
  </div>
</template>

:::

크기

:::demo size 속성으로 아이콘 크기를 설정해요.

<template>
  <div class="demo-spacing">
    <d-icon name="insert-image"></d-icon>
    <d-icon name="insert-image" size="32px"></d-icon>
  </div>
</template>

:::

아이콘 그룹

:::demo 자주 쓰이는 아이콘 그룹 사용 시나리오예요

<template>
  <h5>可操作图标</h5>
  <d-icon-group>
    <d-icon name="add" operable disabled size="16px"></d-icon>
    <d-icon name="edit" operable size="16px"></d-icon>
    <d-icon name="delete" operable size="16px"></d-icon>
  </d-icon-group>
  <h5>静态图标</h5>
  <d-icon-group>
    <d-icon name="add" disabled size="16px"></d-icon>
    <d-icon name="edit" size="16px"></d-icon>
    <d-icon name="delete" size="16px"></d-icon>
  </d-icon-group>
</template>

:::

커스텀 폰트 아이콘

Icon 컴포넌트는 기본적으로 DevUI 아이콘 라이브러리의 아이콘을 참조해요. 기존 Icon 위에서 더 많은 아이콘을 쓰고 싶다면 서드파티 iconfont의 폰트 파일과 CSS 파일을 가져온 뒤 Icon 컴포넌트에서 바로 사용할 수 있어요.

@font-face {
  font-family: 'my-icon';
  src: url('./my-icon.ttf') format('truetype');
}

.my-icon {
  font-family: 'my-icon';
}

.my-icon-right::before {
  content: '\E03F';
}

폰트 아이콘의 css 가져오기

@import 'my-icon.css';

사용

<d-icon class-prefix="my-icon" name="right"></d-icon>

커스텀 svg

vite-plugin-vue-svg를 활용해 svg component를 넘기면 커스텀 svg를 만들 수 있어요.

<template>
  <d-icon :component="MySvgIcon"></d-icon>
</template>
<script>
import { defineComponent } from 'vue';
import MySvgIcon from '../../assets/logo.svg';

export default defineComponent({
  setup() {
    return {
      MySvgIcon,
    };
  },
});
</script>

Icon 파라미터

파라미터 타입 기본값 설명 Demo 링크
name string -- 필수, 아이콘 이름 기본 사용법
size string '16px' 선택, 아이콘 크기 크기
color string '#252b3a' 선택, 아이콘 색 색상
class-prefix string 'icon' 선택, 커스텀 폰트 아이콘 접두어 커스텀 폰트 아이콘
component VueComponent null 선택, 커스텀 svg 아이콘 커스텀 svg
operable boolean false 선택, 아이콘 조작 가능 여부 설명 정보 붙이기
disabled boolean false 선택, 아이콘 비활성 여부 설명 정보 붙이기
rotate number | 'infinite' -- 선택, infinite는 아이콘 자동 회전 설정, 숫자 값은 아이콘 회전 각도 설명 정보 붙이기

Icon 슬롯

슬롯명 설명
prefix 아이콘 앞쪽 내용
suffix 아이콘 뒤쪽 내용

더 알아보기 (Learn more)

d-icon은 DevUI 내장 아이콘 세트를 기본으로 쓰면서 URL 이미지, iconfont, svg 컴포넌트까지 끌어올 수 있는 확장성이 장점이에요. 버튼이나 태그 안에 아이콘을 넣을 때 size와 color만 잘 맞춰도 화면 톤이 깔끔하게 유지돼요.