Notify 消息提示

函数调用

Notify 是一个函数,调用后会直接在页面中弹出相应的消息提示。

组件调用

通过组件调用 Notify 时,可以通过下面的方式进行注册:

  1. import { Notify } from 'vant';
  2. // 全局注册
  3. const app = createApp();
  4. app.use(Notify);
  5. // 局部注册
  6. export default {
  7. components: {
  8. [Notify.Component.name]: Notify.Component,
  9. },
  10. };

script setup 中,可以通过以下方式使用:

  1. const VanNotify = Notify.Component;
  2. </script>
  3. <template>
  4. <!-- 中划线命名 -->
  5. <van-notify />
  6. <!-- 也支持大驼峰命名 -->
  7. <VanNotify>
  8. </template>

基础用法

  1. // 主要通知
  2. Notify({ type: 'primary', message: '通知内容' });
  3. Notify({ type: 'success', message: '通知内容' });
  4. // 危险通知
  5. Notify({ type: 'danger', message: '通知内容' });
  6. // 警告通知
  7. Notify({ type: 'warning', message: '通知内容' });

自定义通知

自定义消息通知的颜色、位置和展示时长。

  1. Notify({
  2. message: '自定义颜色',
  3. color: '#ad0000',
  4. background: '#ffe1e1',
  5. });
  6. Notify({
  7. message: '自定义位置',
  8. });
  9. Notify({
  10. message: '自定义时长',
  11. duration: 1000,
  12. });

全局方法

通过 app.use 全局注册 Notify 组件后,会自动在 app 的所有子组件上挂载 $notify 方法,便于在组件内调用。

组件调用

  1. <van-button type="primary" text="组件调用" @click="showNotify" />
  2. <van-notify v-model:show="show" type="success">
  3. <van-icon name="bell" style="margin-right: 4px;" />
  4. <span>通知内容</span>
  5. </van-notify>
  1. import { ref } from 'vue';
  2. setup() {
  3. const show = ref(false);
  4. const showNotify = () => {
  5. show.value = true;
  6. setTimeout(() => {
  7. show.value = false;
  8. }, 2000);
  9. };
  10. return {
  11. show,
  12. showNotify,
  13. };
  14. };

Options

类型定义

组件导出以下类型定义:

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 。