JSPM

fluent-emoji-ms

0.0.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5
  • Score
    100M100P100Q29481F
  • License MIT

A Vue 3 component for selecting Microsoft Fluent Emojis

Package Exports

  • fluent-emoji-ms
  • fluent-emoji-ms/style.css

Readme

Fluent Emoji MS

Vue 3 组件库,用于在应用中集成微软 Fluent UI 表情符号。

特性

  • 🎨 支持多种风格:现代风格、扁平风格和高对比度风格
  • 🔍 搜索表情符号功能
  • 📂 按分类浏览表情符号
  • 📱 响应式设计,适配不同屏幕尺寸
  • ⚙️ 高度可定制的界面
  • 🧩 支持表情符号分类排序
  • 🔄 自动处理图片加载错误

安装

npm install fluent-emoji-ms

基本使用

<script setup>
import { ref } from 'vue'
import { FluentEmojiPicker } from 'fluent-emoji-ms'

const selectedEmoji = ref(null)

function handleSelectEmoji(emoji) {
  selectedEmoji.value = emoji
  console.log('选中表情:', emoji)
}
</script>

<template>
  <div>
    <FluentEmojiPicker @select="handleSelectEmoji" />
    
    <div v-if="selectedEmoji">
      选中的表情: {{ selectedEmoji.name }}
    </div>
  </div>
</template>

开发

本项目同时支持作为组件库发布和部署示例网站。

安装依赖

npm install

开发模式

npm run dev

构建

# 构建组件库和示例网站
npm run build

# 只构建组件库
npm run build:lib

# 只构建示例网站
npm run build:web

部署示例网站

# 构建示例网站并部署到GitHub Pages
npm run build:web
node scripts/deploy-gh-pages.js

组件

FluentEmojiPicker

主要组件,提供完整的表情选择器功能。

Props

属性名 类型 默认值 说明
disabled Boolean false 是否禁用选择器
initialStyle String 'modern' 初始表情风格
defaultCategory String 'all' 默认选中的表情分类
buttonText String '选择表情' 选择按钮显示的文本
baseUrl String 'https://cdn.jsdelivr.net/npm/fluentui-emoji@1.1.1' 表情图标基础 URL
width Number/String 320 选择器宽度
columns Number 6 固定列数(仅当autoFill=false时生效)
categories Array ['smileys', 'people', 'animals', ...] 要显示的表情分类
closeOnSelect Boolean true 选择表情后是否关闭面板
showSelectedEmoji Boolean false 是否显示选中的表情信息区域
autoFill Boolean true 是否自动填充表情网格
emojiSize Number 28 表情图标大小(像素)

https://unpkg.com/fluentui-emoji@1.1.1/icons/flat/smiling-face-with-hearts.svg

Events

事件名 参数 说明
select emojiWithStyle 选中表情时触发,返回带样式的表情对象
clear - 清除选中表情时触发

EmojiPicker

内部使用的基础表情选择器组件,可用于自定义更复杂的界面。

Props

属性名 类型 默认值 说明
emojis Array required 表情数据数组
selectedCategory String required 当前选中的风格
searchQuery String '' 搜索关键词
selectedEmojiCategory String 'all' 选中的表情分类
autoClose Boolean false 选择后自动关闭
baseUrl String '...' 表情图标基础 URL
width Number/String 280 选择器宽度
columns Number 6 固定列数(仅当autoFill=false时生效)
autoFill Boolean true 是否自动填充表情网格
emojiSize Number 28 表情图标大小(像素)
categories Array [...] 表情分类排序

注意事项

  • 确保网络能够访问表情图标 CDN
  • 如需自定义 CDN 或使用本地图标,可以配置 baseUrl 属性
  • 表情图标加载失败时会尝试使用备用风格

更多示例

查看 examples 文件夹中的示例,获取更多使用场景。

许可证

MIT