Skip to content

NoticeBar 通知バー - Vant 4

📢 NoticeBar 通知バー

🎯 紹介

NoticeBar コンポーネントは一連のメッセージ通知を循環再生して表示するために使用され、重要な情報をより目立たせます!スクロール再生、複数行表示などの機能をサポートしています。

📦 導入

以下の方法でグローバルにコンポーネントを登録します。詳細な登録方法についてはコンポーネントの登録を参照してください。

js
import { createApp } from'vue'; import { NoticeBar } from'vant'; const app = createApp(); app.use(NoticeBar);

🎯 コード例

🔧 基本的な使い方

text 属性で通知バーの内容を設定し、left-icon 属性で通知バーの左側のアイコンを設定します。メッセージに目立つ服を着せるようなものです!👕

html
<van-notice-bar
  left-icon="volume-o"
  text="コードを読む過程で人々が罵り言葉を使う頻度は、コード品質を測る唯一の基準です。"
/>

📜 スクロール再生

通知バーの内容が長すぎる場合、自動的にスクロール再生が開始されます。回転灯のように優雅に長いテキストを表示します!🎠 scrollable 属性でこの動作を制御できます。

html
<!-- 文字が短い場合、スクロール再生を無効にする -->
<van-notice-bar :scrollable="false" text="通知内容" />

<!-- 文字が長い場合、スクロール再生を有効にする -->
<van-notice-bar
  text="コードを読む過程で人々が罵り言葉を使う頻度は、コード品質を測る唯一の基準です。"
/>

📝 複数行表示

文字が長い場合、wrapable 属性を設定することで複数行表示を有効にできます。長いテキストを詩のように改行して表示します!📖

html
<van-notice-bar
  wrapable
  :scrollable="false"
  text="コードを読む過程で人々が罵り言葉を使う頻度は、コード品質を測る唯一の基準です。"
/>

🎭 通知バーモード

通知バーは closeablelink の2種類のモードをサポートし、ユーザーが閉じたり遷移したりできるようにします!

html
<!-- 閉じることができるモード -->
<van-notice-bar mode="closeable">
  通知内容
</van-notice-bar>

<!-- リンクモード -->
<van-notice-bar mode="link">
  通知内容
</van-notice-bar>

🎨 カスタムスタイル

color 属性でテキストの色を設定し、background 属性で背景色を設定して、通知バーに独特の「魅力」を与えます!✨

html
<van-notice-bar color="#1989fa" background="#ecf9ff" left-icon="info-o">
  通知内容
</van-notice-bar>

🎢 垂直スクロール

NoticeBar と Swipe コンポーネントを組み合わせることで、垂直スクロールの効果を実現できます。エレベーターのように上下にメッセージを切り替えます!🏢

html
<van-notice-bar left-icon="volume-o" :scrollable="false">
  <van-swipe
    vertical
    class="notice-swipe"
    :autoplay="3000"
    :show-indicators="false"
  >
    <van-swipe-item>明月直看山头树</van-swipe-item>
    <van-swipe-item>无限青山烟雾中</van-swipe-item>
    <van-swipe-item>千里江山寒色远</van-swipe-item>
  </van-swipe>
</van-notice-bar>

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

📋 API

🎛️ プロパティ

パラメータ説明デフォルト値
mode通知バーのモード、closeable link から選択可能、インタラクション方法を決定 🎭string''
text通知テキストの内容、メッセージの中核内容 📝string''
color通知テキストの色、文字をより目立たせる 🎨string#ed6a0c
background通知バーの背景色、視覚的な雰囲気を作り出す 🌈string#fffbe8
left-icon左側のアイコン名または画像リンク、Icon コンポーネントの name 属性 と同等 🎯string-
delayアニメーションの遅延時間 (s)、スクロール開始のタイミングを制御 ⏰number | string1
speedスクロール速度 (px/s)、文字のスクロール速度を制御 🏃number | string60
scrollableスクロール再生を有効にするかどうか、内容が長すぎる場合はデフォルトで有効 🎠boolean-
wrapableテキストの改行を有効にするかどうか、スクロールが無効な場合のみ有効 📖booleanfalse

🎪 イベント

イベント名説明コールバック引数
click通知バーをクリックしたときにトリガーされ、遷移などの操作を実行可能 👆event: MouseEvent
close通知バーを閉じたときにトリガーされ、ユーザーがメッセージを手動で閉じる ❌event: MouseEvent
replayスクロールバーが再びスクロールを開始するたびにトリガーされ、循環再生のリズム 🔄-

🔧 メソッド

ref を使用して NoticeBar のインスタンスを取得し、インスタンスメソッドを呼び出すことができます。詳細についてはコンポーネントのインスタンスメソッドを参照してください。

メソッド名説明パラメータ戻り値
reset通知バーを初期状態にリセットし、スクロールをやり直す 🔄--

📝 型定義

コンポーネントは以下の型定義をエクスポートします:

ts
import type { NoticeBarMode, NoticeBarProps, NoticeBarInstance } from 'vant';

NoticeBarInstance はコンポーネントインスタンスの型で、以下のように使用します:

ts
import { ref } from 'vue';
import type { NoticeBarInstance } from 'vant';

const noticeBarRef = ref<NoticeBarInstance>();
noticeBarRef.value?.reset();

🎰 スロット

名前内容
default通知テキストの内容、メッセージ表示をカスタマイズ可能 📝
left-icon左側のアイコンをカスタマイズ、個性的なアイコン表示 ⬅️
right-icon右側のアイコンをカスタマイズ、操作ボタンを追加 ➡️

🎨 テーマカスタマイズ

🎛️ スタイル変数

コンポーネントは以下の CSS 変数を提供しており、カスタムスタイルに使用できます。使用方法については ConfigProvider コンポーネント を参照してください。

名前デフォルト値説明
--van-notice-bar-height40px通知バーの高さ 📏
--van-notice-bar-padding0 var(--van-padding-md)通知バーの内側の余白 📦
--van-notice-bar-wrapable-paddingvar(--van-padding-xs) var(--van-padding-md)複数行モードの内側の余白 📖
--van-notice-bar-text-colorvar(--van-orange-dark)文字の色 ✏️
--van-notice-bar-font-sizevar(--van-font-size-md)フォントサイズ 📝
--van-notice-bar-line-height24px行の高さ 📐
--van-notice-bar-backgroundvar(--van-orange-light)背景色 🎨
--van-notice-bar-icon-size16pxアイコンのサイズ 🎯
--van-notice-bar-icon-min-width24pxアイコンの最小幅 📏

📚 関連文書

Vant に基づく企業向けモバイルソリューション