使用vue封装的一个toast组件

实现在vue项目中封装一个Toast提示组件 2.在methods中 用 辅助函数写法导入 asyncchanisshowtoast 模块 格式:“ 在vuex中书写的名字”:“文件名/在vuex中书写的名字”// danger 失败 icon-toast-shibai_huaban。// success 成功 icon-toast_chenggong。// warning 警告 icon-toast-jinggao。mutations与actions分别在状态管理器中的书写。中去查找项目需要的提示图,在这里我就为大家准备好了。 阅读详情

使用vue封装的一个toast组件:

1.首先创建一个toast.vue页面:

<template>
  <div class="toast" v-if="show">
      {{text}}
  </div>
</template>


<script>
export default {};
</script>

<style lang="less" scoped>
.toast {
  position: fixed;
  top: 50%;
  left: 50%;
  background: rgba(0, 0, 0, 0.35);
  padding: 0.2rem;
  border-radius: 0.1rem;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  font-size: 0.32rem;
}
</style>

2.创建一个index.js文件:

import vue from 'vue';


// toast组件
import toastComponent from './toast.vue'

// 返回一个 扩展实例构造器
const ToastConstructor = vue.extend(toastComponent)

// 定义弹出组件的函数 接收2个参数, 要显示的文本 和 显示时间
function showToast(text, duration = 1000) {

    // 实例化一个 toast.vue
    const toastDom = new ToastConstructor({
        el: document.createElement('div'),
        data() {
            return {
                text: text,
                show: true
            }
        }
    })

    // 把 实例化的 toast.vue 添加到 body 里
    document.body.appendChild(toastDom.$el)

    // 过了 duration 时间后隐藏
    setTimeout(() => { toastDom.show = false }, duration)
}


// 注册为全局组件的函数
function registryToast() {
    // 将组件注册到 vue 的 原型链里去,
    // 这样就可以在所有 vue 的实例里面使用 this.$toast()
    vue.prototype.$toast = showToast
}


export default registryToast;

3.最后一步就是在main.js中将该组件注入到vue中:

import toastRegistry from './components/toast/index'
Vue.use(toastRegistry)

就可以在页面中以this.$toast()来使用了

工程化:vite4和vue3里面的toast组件封装及命令式调用 在vue项目中我们要创建命令式的提示框,比如elementui里面都是this.messagethisalert…,但是在vue3中是没有this的,那么我们该如何实现这种命令式的调用呢? 阅读详情

相关推荐

@transactional滥用导致数据源连接池耗尽问题

@transactional滥用导致数据源连接池耗尽问题

qq_43205267的博客 1198

Vue:封装一个Toast

文章目录1.概述2.组件式封装3.插件式封装 1.概述 Toast(吐司),一个短期的弹出的会话,来告诉用户当前的操作是否合理。 据说是因为烤吐司的时候会冒出一阵烟,然后过会烟又消失了,所以就是Toast这名字的由来。奇怪的知识增加了~ 2.组件式封装 在vue项目中,我们可以通过组件的方式来简单的封装一个Toast,具体以下几个步骤。 1.添加组件,写一个自己想要的风格 这里我的例子就如上一个简单的弹窗 2.在想用的组件内引用如上声明好的Toast子组件 引用 import Toast from "c

Continue的博客 1144

使用3d Slicer标注病灶并生成ROI掩膜

本篇博客给大家演示一下如何使用3d Slicer标注病灶并生成ROI掩膜,供深度学习模型训练使用。 关于3d Slicer和MRIcron的安装请看我的另一个帖子。 一、数据加载 你可以使用你手头的数据进行标注,这里为了示例方便,我是用的3d Slicer中给出的Sample Data中的MRBrainTumor1的数据。 二、病灶标注及保存 Modules选择Segment Editor: 然后点击Add按钮添加一个Segment,在下方便签上双击可以修改Segment的命名和颜色等。下方三个按钮

Su_Del的博客 1万+

Vue 之 Toast 消息提示插件的简单封装

Vue开发的一些知识整理,方便后期遇到类似的问题,能够及时查阅使用。本节介绍,vue中简单封装类似Toast的消息提示插件,然后在vue中简单使用,如果有不足之处,欢迎指出,或者你有更好的方法,欢迎留言。win10npm8.5.3vue2.6.14。......

仙魁XAN 3106

用Python+Charles搞定小程序付费短剧下载(附完整代码与避坑点)

本文详细介绍了如何利用Python和Charles抓包工具实现小程序付费短剧的自动化下载。通过分析小程序视频接口、破解请求参数,并编写Python脚本,读者可以轻松获取并保存短剧内容。文章还提供了完整的代码示例和常见问题的解决方案,特别适合对视频采集和抓包技术感兴趣的开发者。

weixin_28731231的博客 1187

CAN总线BusOff恢复机制详解:快慢恢复策略在车载网络中的实战应用

本文深入解析了CAN总线BusOff恢复机制,重点阐述了快慢恢复策略在车载网络中的工程应用。通过对比NXP S32K与STM32平台的实现代码,并结合CANoe仿真与参数优化方法,为工程师提供了从理论到实战的完整解决方案,旨在提升车载网络的可靠性与功能安全。

7up55的博客 614

vue实现Toast轻提示

vue实现Toast轻提示

qq_57479640的博客 4363

用Pixhawk 2.4.8和PX4 1.13,从零搭建你的第一支无人机编队(附避坑清单)

本文详细介绍了如何使用Pixhawk 2.4.8飞控和PX4 1.13固件从零搭建低成本无人机编队系统。涵盖硬件选型、固件配置、多机通信和编队飞行逻辑开发的全流程,特别针对学生和爱好者提供实战验证的避坑方案,帮助实现多机协同飞行。

weixin_27219587的博客 402

五分钟一百行代码,手写一个vue项目全局通用的toast提示组件

开发 Vue 项目时,特别是H5页面,还有一个组件是我们非常常用的,它相对弹框没有那么大,并且不需要手动关闭,在需要更简洁的提示用户一些信息时非常常用,它就是 `toast` 提示组件。

qq_45900435的博客 1709

【DSP】【工程实战】从零构建C6678多核工程:CCS环境配置与启动模式详解

本文详细介绍了在CCS开发环境中从零构建TMS320C6678多核DSP工程的完整流程。内容涵盖KeyStone架构解析、工程创建、基础代码编写、链接命令文件配置、仿真器调试,并重点深入讲解了包括I2C EEPROM在内的多种一级启动模式原理与配置方法,为开发者提供了一套清晰、可复用的实战指南。

weixin_29164185的博客 416

大数据架构中的数据治理:元数据管理与数据血缘追踪实践

本文将聚焦大数据架构中数据治理的两大核心支柱——元数据管理与数据血缘追踪元数据管理的目标、类型与实施步骤(从需求分析到工具落地);数据血缘追踪的技术实现(静态解析、动态捕获、混合方案)与应用场景;如何将两者结合,构建完整的数据治理体系,并通过真实案例展示落地效果。元数据管理:定义了业务/技术/操作元数据,讲解了工具选型(如Apache Atlas)、采集(Hook/API)、存储(关系库+图数据库)、应用(数据发现、质量监控);数据血缘追踪。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 866

如何实现一个vue的toast组件

在现代的Web应用程序中,Toast(提示框)是一种常见的UI组件,它通常用于显示短暂的提示信息或反馈用户操作的结果。Vue.js是一种流行的JavaScript框架,它提供了一种简单而强大的方式来构建web应用程序组件。在本文中,我们将探讨如何使用Vue.js创建一个Toast组件,并将其暴露到全局Vue实例中,以便可以在整个应用程序中使用。

tyxjolin的专栏 2838

Qt —— QWebEngineView加载谷歌离线地图(包含离线地图瓦片下载制作、附谷歌地图开发文档)

  关注 微信公众号搜索"Qt_io_"或"Qt开发者中心"了解更多关于Qt、C++开发知识.。 笔者 - jxd

1万+

vue 封装一个toast组件

vue 封装一个toast组件 第一步 创建一个toast.vue <template> <transition name="fade"> <div v-show="visible">{{message}}</div> </transition> </template> <script> export default { data () { return { visible: fal

依古比古的博客 696

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Vue 组件封装之 Toast 弹框

实现弹框功能。

杏子 2111

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

封装一个vue3 Toast组件,支持组件和api调用

一个简单的toast组件,利用createApp方法,挂载到实际的dom元素,支持组件调用和api调用方式。

xinTianou123的博客 1526

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

vue3【组件封装】消息提示 Toast

src/components/Toast.vue <template> <transition name="fade"> <div class="fixed w-full h-full left-0 top-0 flex z-100 transition-all" v-if="show"> <div :style="{ background: bgColor, color: textColor }" :c

朝阳39的博客 742

Vue3封装自定义Toast组件

Vue3封装自定义Toast组件

weixin_47340789的博客 1466

vue项目中独立封装一个toast提示弹框组件

我们在进行vue项目开发的时候,封装组件是必不可少的一个环节;我们也可以使用别人一些已经写好的ui组件库。但别人的实现原理我们还是有必要知道的,今天我就来分享一个我独立封装的toast弹框组件 1、首先可以创建一个toast文件夹,用来放toast组件和它的js文件 2、然后在main.js文件中引入toast的js文件, 并将toast插件安装到Vue实例中,也就是挂载到实例中; 3、一旦写了 ...

小傲哥哥的博客 2139

封装自己的toast组件,使用vue.extend创建构造器和$mount

标题封装自己的toast组件,使用vue.extend创建构造器 文档:https://cn.vuejs.org/v2/api/index.html#Vue-extend 此种方式主要是封装一些特别常用的组件,而在使用的时候无需再使用组件的地方写入组件标签,通过调用js方法就可以使用,展示页面效果 普通方式:要使用一个组件需要 将 写在使用的地方 vue构造器方式:通过js方法就能使用,不用写 标签 使用方法: 只提示文字 设置回调及停留时间 message: ‘提示信息’, onClose: ‘关闭时

艾小逗 538

Vue.extend实现全局Toast提示组件和Dialog对话框组件封装

Vue.extend实现Alert和Toast组件封装 Vue.extend() 使用 Vue.extend 属于 Vue 的全局 API,相比常用的 Vue.component 写法,使用 Vue.extend 步骤更加繁琐一些,但是在一些独立组件开发场景中,Vue.extend + $mount 这对组合使一些动态渲染或者使用 js 全局调用的组件变得更加灵活 Vue.extend() 方法返回一个组件构造器,通过组件构造器创建组件实例,该实例的参数是一个包含组件选项的对象,用来在实例上扩展属性和方法

廊坊吴彦祖 1339

Vue 3 组件通信系列(十):如何封装全局消息提示组件(Toast/Dialog/Modal)

本文介绍了如何封装Vue 3全局消息提示组件系统,包括Toast、Dialog和Modal三种类型。文章首先分析了全局消息提示组件的必要性,指出它们能解决代码冗余、维护成本高的问题,并提供统一调用API、异步处理等优势。接着详细区分了三种组件的使用场景和特点:Toast用于轻量级反馈,Dialog用于确认操作,Modal支持复杂内容展示。

一名热衷于技术的全栈开发者,专注于前端与后端的全面技术探索。在这里,我将分享我在技术领域的学习与成长,助力更多开发者的进步。 1502

Vue如何封装Toast组件

这应该是上升到插件了 首先创建一个Toast.vue文件 <template> <transition name="demo"> <div class="toast" v-show="theToast"> {{msg}} </div> </transition> </template> <script> export default {

sslcsq的博客 659

vue3 封装 toast组件

vue3 setup语法糖封装 toast 组件

Mr_Chao的博客 1402

Vue组件的两种封装方式——分别实现自定义Toast的封装

前言 在前端开发中,会遇到这样的情景,点击某一个按钮弹出对应的提示,我们通常在前端中把弹出的提示叫做Toast(吐司:烘焙蛋糕是冒出的一缕烟…)。如图: 当我们点击收藏时,如果当前用户没登陆,给出登录提示。下面用两种方式来实现Toast的封装。 普通方式封装 创建一个Vue文件,封装Toast: <template> <div id="toast" v-if="isShow"...

qq_42498327的博客 832

如何封装一个vue3组件,以Toast弹框为例

1、建一个components文件夹,里面建一个Toast.vue文件 <template> <div class="toast">{{message}}</div> </template> <script> import { reactive } from 'vue' export default { props: ['message'] } export const useToastEffect = () => {

xyphf的博客 2945
上一篇: natapp内网穿透代理vue项目出现Invalid Host header
下一篇: H5 img加载gif图片播只能播放一次的问题
want、
博客等级 码龄7年 10粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值