徽章

小巧且自适应的标签,可为几乎任何内容添加上下文。

概述

徽章通过使用相对字体大小和 em 单位来缩放以匹配其父元素的大小。

<div>
  <h2>Example heading <b-badge>New</b-badge></h2>
  <h3>Example heading <b-badge>New</b-badge></h3>
  <h4>Example heading <b-badge>New</b-badge></h4>
  <h5>Example heading <b-badge>New</b-badge></h5>
  <h6>Example heading <b-badge>New</b-badge></h6>
</div>

<!-- b-badges.vue -->

徽章可用作链接或按钮的一部分,以提供计数器(或类似标记)。

<div class="text-center">
  <b-button variant="primary">
    Notifications <b-badge variant="light">4</b-badge>
  </b-button>
</div>

<!-- b-badge-button.vue -->

请注意,徽章可能会让屏幕阅读器和类似辅助技术的用户感到困惑,具体取决于徽章的使用方式。虽然徽章的样式提供了有关其用途的视觉提示,但这些用户只会看到徽章的内容。根据具体情况,这些徽章可能看起来像是句子、链接或按钮末尾的随机附加单词或数字。

除非上下文很明确(例如“通知”示例,其中可以理解“4”是通知数),请考虑在视觉上隐藏的附加文本中包含附加上下文。

<div class="text-center">
  <b-button variant="primary">
    Profile
    <b-badge variant="light">9 <span class="sr-only">unread messages</span></b-badge>
  </b-button>
</div>

<!-- b-badge-button-aria.vue -->

上下文变化

通过 variant 属性添加以下任何变体以更改 <b-badge> 的外观:defaultprimarysuccesswarninginfodanger。如果未指定变体,则将使用 default

<div>
  <b-badge variant="primary">Primary</b-badge>
  <b-badge variant="secondary">Secondary</b-badge>
  <b-badge variant="success">Success</b-badge>
  <b-badge variant="danger">Danger</b-badge>
  <b-badge variant="warning">Warning</b-badge>
  <b-badge variant="info">Info</b-badge>
  <b-badge variant="light">Light</b-badge>
  <b-badge variant="dark">Dark</b-badge>
</div>

<!-- b-badge-variants.vue -->

向辅助技术传达含义

仅使用颜色来添加含义只会提供视觉指示,而不会传达给辅助技术(如屏幕阅读器)的用户。确保由颜色表示的信息要么从内容本身(例如可见文本)中显而易见,要么通过其他方式(例如使用 .sr-only 类隐藏的附加文本)包含在内。

药丸徽章

使用 pill 属性使徽章更圆润(具有更大的边框半径和额外的水平填充)。如果您错过了 Bootstrap v3 中的徽章,则很有用。

<div>
  <b-badge pill variant="primary">Primary</b-badge>
  <b-badge pill variant="secondary">Secondary</b-badge>
  <b-badge pill variant="success">Success</b-badge>
  <b-badge pill variant="danger">Danger</b-badge>
  <b-badge pill variant="warning">Warning</b-badge>
  <b-badge pill variant="info">Info</b-badge>
  <b-badge pill variant="light">Light</b-badge>
  <b-badge pill variant="dark">Dark</b-badge>
</div>

<!-- b-badge-pill.vue -->

可操作徽章

通过指定 href 属性(链接)或 to 属性(路由器链接),快速提供具有悬停和焦点状态的可操作徽章。

<div>
  <b-badge href="#" variant="primary">Primary</b-badge>
  <b-badge href="#" variant="secondary">Secondary</b-badge>
  <b-badge href="#" variant="success">Success</b-badge>
  <b-badge href="#" variant="danger">Danger</b-badge>
  <b-badge href="#" variant="warning">Warning</b-badge>
  <b-badge href="#" variant="info">Info</b-badge>
  <b-badge href="#" variant="light">Light</b-badge>
  <b-badge href="#" variant="dark">Dark</b-badge>
</div>

<!-- b-badge-action.vue -->

请参阅 路由器支持 参考页面,了解路由器链接特定属性。

组件参考

属性

所有属性默认值均可 全局配置

属性
(点击按升序排列)
类型
(点击按升序排列)
默认值
描述
active
布尔值false设为 `true` 时,使用活动样式将组件置于活动状态
active-class
字符串<router-link> 属性:配置链接处于活动状态时应用的活动 CSS 类。通常,您会希望将其设置为类名“active”
append
布尔值false<router-link> 属性:设置 append 属性始终将相对路径附加到当前路径
disabled
布尔值false设为 `true` 时,禁用组件的功能并将其置于禁用状态
exact
布尔值false<router-link> 属性:默认活动类匹配行为是包含匹配。设置此属性会强制模式与路由完全匹配
exact-active-class
字符串<router-link> 属性:配置链接在完全匹配时处于活动状态时应用的活动 CSS 类。通常,您会希望将其设置为类名“active”
exact-path
布尔值false<router-link> 属性:允许仅使用 URL 的路径部分进行匹配,有效地忽略查询和哈希部分
exact-path-active-class
字符串<router-link> 属性:配置链接在完全路径匹配时处于活动状态时应用的活动 CSS 类。通常,您会希望将其设置为类名“active”
href
字符串<b-link> 属性:表示标准 a 链接的目标 URL
no-prefetch
布尔值false<nuxt-link> 属性:为了提高 Nuxt.js 应用程序的响应能力,当链接将在视口中显示时,Nuxt.js 将自动预取代码拆分的页面。设置 `no-prefetch` 将禁用特定链接的此功能
pill
布尔值false设为“true”时,以药丸样式呈现徽章
prefetch
v2.15.0+
布尔值null<nuxt-link> prop:为了提高 Nuxt.js 应用程序的响应能力,当链接将在视口中显示时,Nuxt.js 将自动预取代码拆分页面。将 `prefetch` 设置为 `true` 或 `false` 将覆盖 `router.prefetchLinks` 的默认值
rel
字符串null<b-link> prop:设置呈现的链接上的 `rel` 属性
replace
布尔值false<router-link> prop:设置 replace prop 将在点击时调用 `router.replace()` 而不是 `router.push()`,因此导航不会留下历史记录
router-component-name
v2.15.0+
字符串<b-link> prop:BootstrapVue 会自动检测 `<router-link>` 和 `<nuxt-link>`。在希望基于 `<router-link>` 使用第三方链接组件的情况下,将此 prop 设置为组件名称。例如,如果正在使用 Gridsome,则将其设置为“g-link”(请注意,仅 `<router-link>` 特定的 prop 会传递给组件)
tag
字符串'span'指定要呈现的 HTML 标签,而不是默认标签
target
字符串'_self'<b-link> prop:设置呈现的链接上的 `target` 属性
to
ObjectString<router-link> prop:表示链接的目标路由。点击时,to prop 的值将在内部传递给 `router.push()`,因此该值可以是字符串或 Location 描述符对象
variant
字符串'secondary'将 Bootstrap 主题颜色变体之一应用于组件

<b-badge> 支持生成 <router-link><nuxt-link> 组件(如果使用 Nuxt.js)。有关路由链接(或 nuxt 链接)特定 prop 的更多详细信息,请参阅 路由支持 参考部分。

插槽

名称
描述
default 要放置在徽章中的内容

导入单个组件

您可以通过以下命名导出将各个组件导入到您的项目中

组件
命名导出
导入路径
<b-badge>BBadgebootstrap-vue

示例

import { BBadge } from 'bootstrap-vue'
Vue.component('b-badge', BBadge)

作为 Vue.js 插件导入

此插件包含上面列出的所有各个组件。插件还包含任何组件别名。

命名导出
导入路径
BadgePluginbootstrap-vue

示例

import { BadgePlugin } from 'bootstrap-vue'
Vue.use(BadgePlugin)