vue.js中toast用法及使用toast弹框的实例代码

yizhihongxing

下面是关于“vue.js中toast用法及使用toast弹框的实例代码”的攻略。

什么是Toast

Toast是移动端或Web端的一种轻量级提示框架,常用于简短的操作提示,例如登录成功、数据保存、网络错误、支付完成等提示。

Vue.js中,常用的全局提示框插件有vue-toasted、vux和mint-ui等。下面分别介绍这三个插件的使用方法和示例代码。

使用vue-toasted插件

vue-toasted插件是一款基于Toastify.js的Vue.js2.0轻量级Notification框架,使用简便,具有很好的扩展性。

安装并引入Toastify.js和vue-toasted

npm install toastify-js
npm install vue-toasted
import Toastify from 'toastify-js';
import Toasted from 'vue-toasted';
Vue.use(Toasted);

使用全局Toast

在Vue组件中,我们可以使用全局Toast方法,如下所示:

this.$toasted.show('提示文本', { 
    position: 'top-center', 
    duration: 3000 
});

示例1:自定义Toast

我们可以使用vue-toasted的register方法来自定义一个全局Toast:

Vue.toasted.register('my_custom_toast', (payload) => {
    if(payload.message) {
        // 使用Toastify.js创建Toast
        Toastify({
            text: payload.message,
            duration: payload.duration ? payload.duration : 3000,
            backgroundColor: "#007aff"
        }).showToast();
    }
});

然后,在Vue组件中就可以像这样调用:

this.$toasted.my_custom_toast('自定义提示', { duration: 3000 });

这里我们自定义了一个名为my_custom_toast的Toast方法,调用时可以传入一个提示文本和一个Options对象,其中duration表示持续时间,默认为3000ms(3秒)。

示例2:使用PluginOptions

我们也可以在Vue的实例化中使用PluginOptions参数,以全局定义Toast的默认参数:

Vue.use(Toasted,{
    position:'top-center',
    duration: 3000,
    theme: 'toasted-primary',
    type: 'success',
});

然后在组件中使用全局$toasted:

this.$toasted.success('Success Message');

使用vux插件

vux是一个基于WeUI和Vue.js的移动端UI框架,包含了很多常用的组件和插件,其中包含Toast提示框。

安装并引入vux

vux插件可以使用gulp、webpack或directly include方式引入,这里我们演示直接include方式引用:

<link rel="stylesheet" href="//unpkg.com/vux/dist/vux.min.css">
<script src="//cdn.bootcss.com/vue/2.3.4/vue.min.js"></script>
<script src="//cdn.bootcss.com/vuex/2.3.1/vuex.min.js"></script>
<script src="//cdn.bootcss.com/axios/0.15.3/axios.min.js"></script>
<script src="//unpkg.com/vux/dist/vux.min.js"></script>

使用WeToast

WeToast是vux中的全局Toast组件,使用简便:

this.$vux.toast.show({
    text: '提示文本',
    position: 'middle',
    type: 'text',
    width: '15em',
    time: 3000,
    isShowMask: true
});

示例1:自定义Toast

我们也可以自定义一个Toast组件并引入到Vue实例中:

<v-toast ref="customToast" />
mounted () {
    // 自定义toast
    this.$refs.customToast.show({
        type: 'warn',
        width: '10em',
        text: 'warn message'
    });
}

示例2:使用WeLoading

WeLoading在vux中是一个全局Loading组件,可以实现全局Loading效果,用法与WeToast类似:

<loading :show="showLoading" />
created () {
    this.showLoading = true;
    setTimeout(() => {
        this.showLoading = false;
    }, 2000);
}

使用mint-ui插件

mint-ui是饿了吗开发的基于Vue.js的移动端UI组件库,提供了丰富的组件以及插件,其中也包含Toast提示框。

安装并引入mint-ui

npm i mint-ui -S
import Vue from 'vue';
import Mint from 'mint-ui';
import 'mint-ui/lib/style.css';

Vue.use(Mint);

使用全局Toast

在组件中使用全局Toast方法:

this.$toast({
    message: '提示文本',
    position: 'bottom',
    duration: 3000
});

示例1:自定义Toast

我们可以通过在Vue实例中注册一个Toast组件的方法来自定义Toast:

Vue.prototype.$myToast = function (msg, obj) {
    let def = {
        message: msg,
        position: 'bottom',
        duration: 2000
    };
    let options = Object.assign({}, def, obj);
    this.$toast(options);
}

然后在组件中就可以像这样调用自定义Toast方法了:

this.$myToast('Custom Toast', { position: 'top' });

示例2:使用Loadmore

Loadmore是 Mint-UI的一个全局Loading组件,用法与其它Toast类似:

<mt-loadmore :up="true" :auto-fill="true"></mt-loadmore>
mounted () {
    setTimeout(() => {
        this.loading = false;
    }, 2000);
}

至此,我们介绍了三种常用的Vue.js中Toast插件,包括了使用及示例代码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue.js中toast用法及使用toast弹框的实例代码 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • Vuex的安装、搭建及案例详解

    Vuex的安装 在使用Vuex之前,需要在项目中安装Vuex依赖包。可以通过npm或者yarn进行安装。 使用npm安装: npm install vuex –save 使用yarn安装: yarn add vuex Vuex的搭建 Vuex的核心概念包括state、mutations、actions、getters和modules。 以下是一个简单的Vu…

    Vue 2023年5月27日
    00
  • 使用react context 实现vue插槽slot功能

    使用React Context 来实现类似于Vue 框架中的插槽 Slot 的功能主要有两个步骤: 创建一个 Context 并提供默认值 在需要使用的子组件中使用该 Context 的 Provider,然后在子组件中使用该 Context 的 Consumer 来渲染相应的内容。 具体实现过程如下: 创建 Context 在需要使用插槽 Slot 的父组…

    Vue 2023年5月28日
    00
  • Vue获取表单数据的方法

    当使用Vue开发Web应用时,我们经常需要从表单中获取用户输入的数据。下面是几种Vue获取表单数据的方法的完整攻略: 1.使用v-model指令获取表单数据 我们可以在表单元素上使用v-model指令,Vue会自动为我们管理和更新表单元素的值。要使用v-model指令获取表单值,我们需要为表单元素绑定v-model指令,将其值绑定到Vue组件实例中的一个属性…

    Vue 2023年5月27日
    00
  • vue中使用vue-pdf的方法详解

    关于”vue中使用vue-pdf的方法详解”,以下是详细步骤: 1.安装 vue-pdf 在vue项目中,可以使用npm指令进行安装,在命令行中输入: npm install vue-pdf –save 2.配置 vue-pdf 在Vue项目中,需要在 main.js 中引入 vue-pdf 并进行全局注册: import VuePdf from ‘vue…

    Vue 2023年5月28日
    00
  • Vue实现自定义字段导出EXCEL的示例代码

    下面我将详细讲解“Vue实现自定义字段导出EXCEL的示例代码”的完整攻略。 1. 使用第三方库 实现Vue自定义字段导出Excel的方式,可以使用一些第三方库,例如FileSaver.js,xlsx等。通过使用这些库,我们可以将Vue实例中的表格数据导出为Excel表格。 2. 导出Excel代码 以下是一个简单的Vue组件,它展示了如何使用xlsx和Fi…

    Vue 2023年5月27日
    00
  • vue3 文档梳理快速入门

    下面是关于“vue3 文档梳理快速入门”的完整攻略。 简介 Vue.js 是一款渐进式 JavaScript 框架,具有简洁、高效、灵活等特点,在前端开发中得到广泛应用。Vue.js 3.0 是 Vue.js 的最新版本,与 Vue.js 2.x 相比,它更快、更小、更易于使用。本文主要介绍 Vue.js 3.0 的文档梳理快速入门。 文档梳理 Vue.js…

    Vue 2023年5月28日
    00
  • Vue修饰符的使用详解

    Vue修饰符的使用详解 修饰符是什么? 在 Vue.js 中,修饰符指的是在指令(Directive)后面以半角句号 . 指明的特殊后缀,用于改变指令的行为。Vue 提供多个指令修饰符,比如 .stop、.prevent、.capture、.self、.once 等。 常用的修饰符 以下是 Vue 中比较常用的指令修饰符: .stop: 阻止事件冒泡 .pr…

    Vue 2023年5月27日
    00
  • 优化Vue项目编译文件大小的方法步骤

    优化Vue项目编译文件大小是一个关键问题,对于项目的性能和用户体验都有着重要的影响。下面提供一些方法步骤,以帮助您优化Vue项目编译文件大小。 1. 使用 Webpack Bundle Analyzer Webpack Bundle Analyzer是一个可视化工具,能够查看打包后文件的大小和依赖情况,从而找出哪些包或模块对打包后的文件大小有显著影响。具体步…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部