当前位置:首页 > VUE

vue badge 实现方法

2026-01-18 08:36:02VUE

使用组件库实现 Badge

Vue 生态中主流组件库(如 Element UI、Ant Design Vue、Vuetify 等)均提供现成的 Badge 组件。

以 Element UI 为例:

<el-badge :value="12" class="item">
  <el-button>评论</el-button>
</el-badge>

Ant Design Vue 示例:

vue badge 实现方法

<a-badge count=5>
  <a-avatar shape="square"/>
</a-badge>

自定义 Badge 组件

通过 CSS 绝对定位实现基础样式:

<template>
  <div class="badge-container">
    <slot></slot>
    <span class="badge" v-if="count">{{ count }}</span>
  </div>
</template>

<script>
export default {
  props: ['count']
}
</script>

<style>
.badge-container {
  position: relative;
  display: inline-block;
}

.badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background: red;
  color: white;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  font-size: 12px;
  text-align: center;
  line-height: 16px;
}
</style>

动态 Badge 样式

根据数值变化调整样式:

vue badge 实现方法

computed: {
  badgeClass() {
    return {
      'badge': true,
      'badge-danger': this.count > 10,
      'badge-warning': this.count <= 10
    }
  }
}

动画效果实现

使用 Vue 过渡动画:

<transition name="bounce">
  <span class="badge" v-if="show">{{ count }}</span>
</transition>

<style>
.bounce-enter-active {
  animation: bounce-in 0.5s;
}
@keyframes bounce-in {
  0% { transform: scale(0) }
  50% { transform: scale(1.5) }
  100% { transform: scale(1) }
}
</style>

服务端数据绑定

结合 Vuex 或 API 数据:

data() {
  return {
    notificationCount: 0
  }
},
mounted() {
  fetch('/api/notifications/count')
    .then(res => res.json())
    .then(data => {
      this.notificationCount = data.count
    })
}

标签: 方法vue
分享给朋友:

相关文章

vue路由实现内部切换

vue路由实现内部切换

Vue 路由实现内部切换的方法 Vue Router 是 Vue.js 官方的路由管理器,用于实现单页应用(SPA)的页面切换。以下是几种常见的内部路由切换方式: 使用 <router-lin…

vue 实现pc

vue 实现pc

Vue 实现 PC 端应用的核心要点 Vue.js 是一个渐进式框架,适合构建 PC 端单页应用(SPA)或复杂的前端界面。以下是实现 PC 端应用的关键方法和注意事项: 项目初始化与工程化配置 使…

实现vue模版

实现vue模版

Vue 模板的基本结构 Vue 模板基于 HTML 语法,通过 Vue 的指令和插值实现动态渲染。以下是一个基础模板示例: <template> <div id="…

vue实现语音

vue实现语音

Vue 实现语音功能的方法 使用 Web Speech API Vue 可以结合 Web Speech API 实现语音识别和合成功能。Web Speech API 包含 SpeechRecognit…

vue 实现权限

vue 实现权限

Vue 实现权限控制的方法 在 Vue 项目中实现权限控制通常涉及前端路由、组件和按钮级别的权限管理。以下是几种常见的实现方式: 路由权限控制 通过路由守卫实现权限验证,过滤用户无权访问的路由:…

vue菜单实现

vue菜单实现

Vue 菜单实现方法 使用 Element UI 的菜单组件 Element UI 提供了现成的菜单组件,适合快速实现导航菜单。安装 Element UI 后,可以直接使用 el-menu 相关组件。…