@campus-admin/icon

面向智慧校园的语义图标集:校园业务图标别名与后端图标名解析
180
Install
npm install @campus-admin/icon
Latest Version:1.0.0
Vue:3
License:MIT
Last Updated:Sep 12, 2026
Links: npm
Maintainer: unionschool

@campus-admin/icon

面向智慧校园的语义图标集:校园业务图标别名 + 后端图标名解析。

安装

pnpm add @campus-admin/icon @lucide/vue

用法

语义图标(业务页面推荐)

<script setup lang="ts">
import { CampusAttendance, CampusStudent } from '@campus-admin/icon'
</script>

<template>
  <CampusStudent :size="18" />
  <CampusAttendance :size="18" />
</template>

解析后端下发的图标名

菜单、字典里的图标是字符串,统一用 resolveIcon() 解析:

import { resolveIcon } from '@campus-admin/icon'

const icon = resolveIcon(node.icon)   // 支持 CampusStudent 与 GraduationCap 两种写法
<component :is="resolveIcon(item.icon)" v-if="resolveIcon(item.icon)" :size="16" />

解析不到时返回 undefined,由调用方决定降级方式(通常是不显示图标,不影响菜单可用性)。

命名约定

前缀 含义 例子
Campus* 校园业务语义,业务与后端优先用这套 CampusStudent、CampusCard、CampusAccess
lucide 原名 通用图标,兼容历史数据 GraduationCap、LayoutDashboard

新增校园图标时,顺手加进 iconRegistry,否则后端下发的新名字解析不出来。

相关包

  • @campus-admin/ui:组件库(内部图标是它的实现细节,直接用 @lucide/vue)
  • @campus-admin/locale:国际化
  • @campus-admin/core:框架与装配入口

版权

使用本项目时请保留版权信息(MIT 许可要求随副本保留版权声明):

  • 保留包内的 LICENSE 文件与版权声明;
  • 保留页面页脚中的「Powered By 众校通 ®」与联系方式(示例用 Copyright 组件统一渲染);
  • 二次分发或修改后的版本,请在显著位置保留同样的版权声明。

Powered By 众校通 ®

Related Packages

@campus-admin/ui

面向智慧校园后台场景的 Vue 3 组件库

143 1
@campus-admin/core

Campus Admin 框架层与装配入口:应用生命周期、服务容器、Vue 适配、命令式 API 与组...

0 1
@campus-admin/locale

面向智慧校园后台的国际化运行时:词条、取词切换与日期数字格式化

154 1
@jt-icons/icon-vue-components

Vue components of JT Icons collection.

2,961 1
@peak-stone/vue-admin

Admin project lib using Vue.js & ElementUI

1,071 1

Version History

Version Released Vue License
1.0.0 ^3.5.42 MIT