vant/src/notice-bar

NoticeBar

Install

import { createApp } from 'vue';
import { NoticeBar } from 'vant';

const app = createApp();
app.use(NoticeBar);

Usage

Basic Usage

<van-notice-bar text="Notice Content" left-icon="volume-o" />

Scrollable

<!-- Enable scroll when text is short -->
<van-notice-bar scrollable text="Notice Content" />

<!-- Disable scroll when text is long -->
<van-notice-bar
  :scrollable="false"
  text="Technology is the common soul of the people who developed it."
/>

Wrapable

<van-notice-bar wrapable :scrollable="false">Notice Content</van-notice-bar>

Mode

<van-notice-bar mode="closeable">Notice Content</van-notice-bar>

<van-notice-bar mode="link">Notice Content</van-notice-bar>

Custom Style

<van-notice-bar color="#1989fa" background="#ecf9ff" left-icon="info-o">
  Notice Content
</van-notice-bar>

Vertical Scroll

<van-notice-bar left-icon="volume-o" :scrollable="false">
  <van-swipe
    vertical
    class="notice-swipe"
    :autoplay="3000"
    :show-indicators="false"
  >
    <van-swipe-item>Content 1</van-swipe-item>
    <van-swipe-item>Content 2</van-swipe-item>
    <van-swipe-item>Content 3</van-swipe-item>
  </van-swipe>
</van-notice-bar>

<style>
  .notice-swipe {
    height: 40px;
    line-height: 40px;
  }
</style>

API

Props

Attribute Description Type Default
mode Mode, can be set to closeable link string ''
text Notice text content string ''
color Text color string #f60
background Background color string #fff7cc
left-icon Left Icon string -
delay Animation delay (s) number | string 1
speed Scroll speed (px/s) number | string 50
scrollable Whether to scroll content boolean -
wrapable Whether to enable text wrap boolean false

Events

Event Description Arguments
click Emitted when NoticeBar is clicked event: Event
close Emitted when NoticeBar is closed event: Event
replay Emitted when NoticeBar is replayed -

Slots

Name Description
default Notice text content
left-icon Custom left icon
right-icon Custom right icon

Less Variables

How to use: Custom Theme.

Name Default Value Description
@notice-bar-height 40px -
@notice-bar-padding 0 @padding-md -
@notice-bar-wrapable-padding @padding-xs @padding-md -
@notice-bar-text-color @orange-dark -
@notice-bar-font-size @font-size-md -
@notice-bar-line-height 24px -
@notice-bar-background-color @orange-light -
@notice-bar-icon-size 16px -
@notice-bar-icon-min-width 24px -