ActionBar 动作栏 - Vant 4
ActionBar 动作栏
🎯 介绍
动作栏是移动端应用的得力助手!它通常固定在页面底部,为用户提供快捷的操作入口。无论是购物车、收藏、分享,还是立即购买,动作栏都能让用户轻松完成各种操作,大大提升用户体验。
📦 引入
通过以下方式来全局注册组件,更多注册方式请参考组件注册。
import { createApp } from 'vue';
import { ActionBar, ActionBarIcon, ActionBarButton } from 'vant';
const app = createApp();
app.use(ActionBar);
app.use(ActionBarIcon);
app.use(ActionBarButton);🚀 代码演示
基础用法
最简单的动作栏包含图标和按钮。图标通常用于次要操作(如收藏、分享),按钮用于主要操作(如加入购物车、立即购买)。
<van-action-bar>
<van-action-bar-icon icon="chat-o" text="客服" @click="onClickIcon" />
<van-action-bar-icon icon="cart-o" text="购物车" @click="onClickIcon" />
<van-action-bar-button type="warning" text="加入购物车" @click="onClickButton" />
<van-action-bar-button type="danger" text="立即购买" @click="onClickButton" />
</van-action-bar>import { showToast } from 'vant';
export default {
setup() {
const onClickIcon = () => showToast('点击图标');
const onClickButton = () => showToast('点击按钮');
return {
onClickIcon,
onClickButton,
};
},
};徽标提示
想要吸引用户注意?在 ActionBarIcon 组件上设置 dot 属性会在图标右上角展示一个醒目的小红点;设置 badge 属性则可以显示具体的数字或文字,比如购物车商品数量。
<van-action-bar>
<van-action-bar-icon icon="chat-o" text="客服" dot />
<van-action-bar-icon icon="cart-o" text="购物车" badge="5" />
<van-action-bar-icon icon="shop-o" text="店铺" badge="12" />
<van-action-bar-button type="warning" text="加入购物车" />
<van-action-bar-button type="danger" text="立即购买" />
</van-action-bar>自定义图标颜色
通过 ActionBarIcon 的 color 属性可以自定义图标的颜色,让你的动作栏更符合品牌色彩。
<van-action-bar>
<van-action-bar-icon icon="chat-o" text="客服" color="#ee0a24" />
<van-action-bar-icon icon="cart-o" text="购物车" />
<van-action-bar-button type="warning" text="加入购物车" />
<van-action-bar-button type="danger" text="立即购买" />
</van-action-bar>自定义按钮颜色
通过 ActionBarButton 的 color 属性可以自定义按钮的颜色,甚至支持传入 linear-gradient 渐变色,让你的按钮更加炫酷!
API
ActionBar Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| safe-area-inset-bottom | 是否开启底部安全区适配 | boolean | true |
| placeholder | 是否在标签位置生成一个等高的占位元素 | boolean | false |
ActionBarIcon Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| text | 按钮文字 | string | - |
| icon | 图标 | string | - |
| color | 图标颜色 | string | #323233 |
| icon-class | 图标额外类名 | string | Array | object | - | | icon-prefix | 图标类名前缀,等同于 Icon 组件的 class-prefix 属性 | string | van-icon |
| dot | 是否显示图标右上角小红点 | boolean | false | | badge | 图标右上角徽标的内容 | number | string | - | | badge-props | 自定义徽标的属性,传入的对象会被透传给 Badge 组件的 props | BadgeProps | - |
| url | 点击后跳转的链接地址 | string | - | | to | 点击后跳转的目标路由对象,等同于 Vue Router 的 to 属性 | string | object | - |
| replace | 是否在跳转时替换当前页面历史 | boolean | false |
ActionBarButton Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| text | 按钮文字 | string | - |
| type | 按钮类型,可选值为 default``primary``success``warning``danger | string | default |
| color | 按钮颜色,支持传入 linear-gradient 渐变色 | string | - |
| icon | 左侧图标名称或图片链接,等同于 Icon 组件的 name 属性 | string | - |
| disabled | 是否禁用按钮 | boolean | false | | loading | 是否显示为加载状态 | boolean | false | | url | 点击后跳转的链接地址 | string | - | | to | 点击后跳转的目标路由对象,等同于 Vue Router 的 to 属性 | string | object | - |
| replace | 是否在跳转时替换当前页面历史 | boolean | false |
ActionBarIcon Slots
| 名称 | 说明 |
|---|---|
| default | 文本内容 |
| icon | 自定义图标 |
ActionBarButton Slots
| 名称 | 说明 |
|---|---|
| default | 按钮显示内容 |
类型定义
组件导出以下类型定义:
importtype { ActionBarProps, ActionBarIconProps, ActionBarButtonProps, } from'vant';主题定制
样式变量
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。
| 名称 | 默认值 | 描述 |
|---|---|---|
| --van-action-bar-background | var(--van-background-2) | - |
| --van-action-bar-height | 50px | - |
| --van-action-bar-icon-width | 48px | - |
| --van-action-bar-icon-height | 100% | - |
| --van-action-bar-icon-color | var(--van-text-color) | - |
| --van-action-bar-icon-size | 18px | - |
| --van-action-bar-icon-font-size | var(--van-font-size-xs) | - |
| --van-action-bar-icon-active-color | var(--van-active-color) | - |
| --van-action-bar-icon-text-color | var(--van-text-color) | - |
| --van-action-bar-icon-background | var(--van-background-2) | - |
| --van-action-bar-button-height | 40px | - |
| --van-action-bar-button-warning-color | var(--van-gradient-orange) | - |
| --van-action-bar-button-danger-color | var(--van-gradient-red) | - |
🎉 总结
ActionBar 动作栏是移动端应用的黄金搭档!它不仅能提供便捷的操作入口,还能通过徽标提示、自定义颜色等功能,让你的应用更加生动有趣。无论是电商购物、社交分享,还是其他业务场景,ActionBar 都能帮你打造出色的用户体验。
📚 相关内容
想要了解更多?这些内容可能对你有帮助:
- 🚀 快速开始 - 从零开始,快速上手 Vant
- 🎨 主题定制 - 打造专属于你的视觉风格
- 📱 移动端适配 - 让你的应用在各种设备上完美呈现
- 🔘 Button 按钮 - 了解按钮组件的基础用法
- 🏷️ Badge 徽标 - 学习徽标组件的使用方法
- 🎨 Icon 图标 - 探索图标组件的丰富功能
- 📋 最佳实践 - 学习开发中的最佳实践
- 🔍 常见问题 - 快速解决开发中的疑问