封装Vue Element的dialog弹窗组件】的更多相关文章

我本没有想着说要封装一个弹窗组件,但有同行的朋友在问我,而且弹窗组件也确实在项目开发中用的比较多.思前想后,又本着样式统一且修改起来方便的原则,还是再为大家分享一个我所封装的弹窗组件吧. 其实,并不是所有封装组件的方式都是一成不变的,你可以采用函数式组件这种能提高性能的方式,也可以使用带有状态和生命周期的普通组件的封装方式.但像dialog这种包含很多点击事件如确定或提交事件.取消或重置事件.右上角那个小叉叉的关闭事件等,又有可能包含嵌套其他组件如表格组件.表单组件.树形组件.穿梭框组件等的公共…
前一段时间分享了基于vue和element所封装的弹窗组件(封装Vue Element的dialog弹窗组件),今天就来分享一个基于react和antD所封装的弹窗组件,反正所使用的技术还是那个技术,情况还是那个情况.只是基于vue所封装的弹窗组件和基于react所封装的弹窗组件还是有很大差别的.一样的是封装的思想和思路,不一样的是实现的技术. 至于所用到的技术,还是跟之前分享的有关react组件所用到的技术差不多,无非就是react hooks.函数式组件等.实现思路的话,还是在父组件中打开弹…
在处理表格编辑相关的需求,是需要做一个弹框进行保存的:或者查看表格数据的详细信息时,也是需要做弹窗: 当然 ,这是类似于这样的 ,当然 element 已经帮我们做好 弹窗这一块 主要 我想记录的是 将 弹窗 做为组件,并且如果弹窗部分有请求部分的话,就到弹窗组件内部处理,相对于说解耦吧 也有子组件改变父组件传过来的 值 表格部分,也就是主要显示地方 <template> <div class="myComponent"> <el-table :data=…
上周分享了几篇关于React组件封装方面的博文,这周就来分享几篇关于Vue组件封装方面的博文,也好让大家能更好地了解React和Vue在组件封装方面的区别. 在封装Vue组件时,我依旧会交叉使用函数式组件的方式来实现.关于函数式组件,我们可以把它想像成组件里的一个函数,入参是渲染上下文(render context),返回值是渲染好的HTML(VNode).它比较适用于外层组件仅仅是对内层组件的一次逻辑封装,而渲染的模板结构变化扩展不多的情况,且它一定是无状态.无实例的,无状态就意味着它没有cr…
前两天封装了一个基于vue和Element的table表格组件,阅读的人还是很多的,看来大家都是很认同组件化.高复用这种开发模式的,毕竟开发效率高,代码优雅,逼格高嘛.虽然这两天我的心情很糟糕,就像"懂王"怼记者:"你是一个糟糕的记者:CNN,Fake news"一样的心情,但我还是忍着难受的心情来工作和分享,毕竟工作是饭碗,分享也能化解我糟糕透顶的心情. 今天,就来分享一下基于vue和Element所封装的form表单组件,其中所用到的技术,在上一篇文章封装Vue…
前一段时间,有博友在我那篇封装Vue Element的table表格组件的博文下边留言说有没有那种"表格行内编辑"的封装组件,我当时说我没有封装过这样的组件,因为一直以来在实际开发中也没有遇到过这样的需求,但我当时给他提供了一个思路. 时间过去了这么久,公司的各种需求也不停地往外冒,什么地图图表.表格行内编辑.动态新增表单等等,只有你做不到,没有产品想不到,贼鸡儿累.再加上很快又要过年了,大家工作的心态基本呈直线下滑趋势而玩忽职守.尸位素餐以致饱食终日.只是话虽如此,但越是到年底,需求…
codejing 2020-07-10 09:13:31  652  收藏 分类专栏: Web Vue Element UI 版权 .当表单form赋完值后,如果后续又对form中某一属性值进行操作如图: 此处对form中的attId进行操作 后续如果form表单组件中使用select组件同时绑定attId这个值 如图: 此时select选择框点击选项表单中是不做显示的也就是说选择完之后没有反应,此时应该在select组件上加上强制渲染 如图:…
介绍 这是一个是基于element-UI的分页组件基础上,进行了二次封装的分页组件,在展示数据时,该分页组件采用了每显示一页数据,只请求当前页面的数据的请求策略,从而避免了一次性将数据全部请求所造成的资源浪费. 使用方法 由于该组件是基于element-UI的分页组件进行二次封装,所以在使用该组件时请务必安装element-UI(安装方式猛戳这里),安装好element-UI后,只需将该组件文件夹Pagination导入到现有项目中即可使用. 示例 <template> <paginat…
本来昨天就想分享封装的这个upload组件,结果刚写了两句话,就被边上的同事给偷窥上了,于是在我全神贯注地写分享的时候他就神不知鬼不觉地突然移动到我身边,腆着脸问我在干啥呢.卧槽你妈,当场就把我吓了一跳,我说我没干嘛,在工作啊,然后我就把浏览器窗口切换了,他就来了一句:我看到了博客.我没搭理他,但心里就不停地在骂"槽你妈",我确实很生气.其实我一直很反感那种坐在你边上有事没事就斜眼瞄你的电脑屏幕的同事,那种上班期间被偷窥的感觉很不爽.我这么说不是我特意去注意旁边的同事有没有在斜眼偷瞄我…
父子组件通信 父 通过props属性给 子传递数据 子 操作 父  this.$parent.XXX 子通过$emit传递参数 或者通过vue-bus vue-bus既可以实现父子组件之间的通信,也可以实现兄弟组件之间的通信 vue-bus安装 (c)npm install vue-bus 引入 import Vue from 'vue'; import VueBus from 'vue-bus'; Vue.use(VueBus); 应用: 发送: this.$bus.$emit('closeM…
this.$refs['disposeConfigsform'].resetFields();…
我们前端开发人员在使用表格的过程中,大概率碰到的都是表格头部在表格的最上边,然后呈一行展示,紧接着就是表格的每一行的每一个单元格来展示具体内容的场景,很少会遇到表格的头部呈纵向一行展示,也就是说表格的头部在左边,具体的内容在右边(也可以说是左右结构)这种使用场景,而且有时候的场景可能会是纵向表头有两列或多列. 遇到这样的需求或者说使用场景,你也不能说人家产品提的需求不合理,毕竟使用场景不同.我不知道咱们同行的前端大佬是用啥牛逼格拉斯的技术来实现这样的需求的,反正我以前基本都是直接上一个表格,然后…
VUE+Element 前端应用,比较不错的一点就是界面组件化,我们可以根据重用的指导方针,把界面内容拆分为各个不同的组合,每一个模块可以是一个组件,也可以是多个组件的综合体,而且这一个过程非常方便.组件封装的目的就是为了能够更加便捷.快速的进行业务功能的开发.组件(component)是vue的最强大功能之一,组件可以实现一些类似功能的复用及与其它业务逻辑的解耦.本篇随笔介绍前端框架中常用到的一些组件封装处理,用于简化界面.隐藏实现细节的目的. 1.组件封装的需要 在我们开发一个主要界面的时候…
项目中需要用到树形组件,在网上发现一个用vue+element实现的树形组件,现在记录下: demo地址:https://github.com/wilsonIs/vue-treeSelect…
同事封装了一个弹窗组件,觉得还不错,直接拿来用了: gif图展示: 弹框组件代码: <template> <transition name="confirm-fade"> <div @touchmove.prevent v-if="isShowConfirm" class="my-confirm" @click.stop="clickFun('clickCancel')"> <div…
列表组件 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Page Title</title> <meta name="viewport" content=…
前言:工作中用到 vue+element ui 的前端框架,使用到上传文件,则想着封装为组件,达到复用,可扩展.转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9630868.html 网站地址:我的个人vue+element ui demo网站 github地址:yuleGH github 组件代码如下: <div id="uploadComponent" style="display: none"> <el…
前言:工作中用到 vue+element ui 的前端框架,有这个场景:很多表格的列有许多一样的,所以考虑将列封装为组件.转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9530781.html 网站地址:我的个人vue+element ui demo网站 github地址:yuleGH github 代码如下: 这里有两种方式让表格使用组件 <el-table :data="tableData" style="width: 100…
封装Vue组件的一些技巧 本文同步在个人博客shymean.com上,欢迎关注 写Vue有很长一段时间了,除了常规的业务开发之外,也应该思考和反思一下封装组件的正确方式.以弹窗组件为例,一种实现是在需要模板中引入需要弹窗展示的组件,然后通过一个flag变量来控制弹窗的组件,在业务代码里面会充斥着冗余的弹窗组件逻辑,十分不优雅. 本文整理了开发Vue组件的一些技巧,包含大量代码示例. 开发环境 vue-cli3提供了非常方便的功能,可以快速编写一些测试demo,是开发组件必备的环境.下面是安装使用…
在我们开发BS页面的时候,往往需要了解常规界面组件的使用,小到最普通的单文本输入框.多文本框.下拉列表,以及按钮.图片展示.弹出对话框.表单处理.条码二维码等等,本篇随笔基于普通表格业务的展示录入的场景介绍这些常规Element组件的使用,使得我们对如何利用Element组件有一个大概的认识. 1.列表界面和其他模块展示处理 在前面随笔<循序渐进VUE+Element 前端应用开发(5)--- 表格列表页面的查询,列表展示和字段转义处理>介绍了基于列表展示了相关数据,并在列表界面整合了增删改查…
在我前面随笔<循序渐进VUE+Element 前端应用开发(6)--- 常规Element 界面组件的使用>里面曾经介绍过一些常规的界面组件的处理,主要介绍到单文本输入框.多文本框.下拉列表,以及按钮.图片展示.弹出对话框.表单处理,本篇随笔补充这一个主题,介绍树列表组件和下拉列表树组件在项目中的使用,以及一个SplitPanel的组件. 1.常规树列表控件的使用 众所周知,一般界面很多情况涉及到树列表的处理,如类型展示,如果是一层的,可以用下拉列表代替,如果是多个层级的,采用树控件展示会更加…
在前面随笔<循序渐进VUE+Element 前端应用开发(12)--- 整合ABP框架的前端登录处理>介绍了一个系统最初接触到的前端登录处理的实现,但往往对整个系统来说,一般会有很多业务对象,而每个业务对象的API接口又有很多,不过简单来说也就是常规的增删改查,以及一些自定义的接口,通用都比较有规律性.而本身我们这个VUE+Element 前端应用就是针对ABP框架的业务对象,因此前端的业务对象接口也是比较统一的,那么可以考虑在前端中对后端API接口调用进行封装,引入ES6的方式进行前端API…
在很多应用中,往往都涉及到记录用户所在省份.城市.区县或者街道等信息,一般我们可以通过联动的Select或者类似的界面组件进行展示,或者使用Element中的el-cascader界面组件进行展示,而全国的省份.城市.区县或者街道等信息我们可以通过官方的数据进行获取,可以直接存放在JS里面,也可以存储在自己的数据库里面,最后统一进行联动展示即可.本篇随笔介绍几种组件对省市区县联动处理的效果及做法,可以直接应用在我们项目中,也可以做为一个组件开发的参考学习. 1.基于element-china-a…
在我们使用Vue+Element开发前端的时候,往往涉及到很多界面组件的使用,其中很多直接采用Element官方的案例即可,有些则是在这个基础上封装更好利用.更少代码的组件:另外有些则是直接采用第三方开发好的组件,目的就是实现所需功能外,尽量简化界面使用代码.本篇随笔介绍在我的项目中经常用到的各种界面组件和它的界面效果,以便在实际开发中进行相应的参考,提高开发效率. 我们以几个常规界面来介绍相关控件的使用,如列表界面,包括查询.表格.分页等信息,查询框中包含一些关键字段的信息查询,而表格中则包含…
在我们使用Vue+Element开发前端的时候,往往涉及到很多界面组件的使用,其中很多直接采用Element官方的案例即可,有些则是在这个基础上封装更好利用.更少代码的组件:另外有些则是直接采用第三方开发好的组件,目的就是实现所需功能外,尽量简化界面使用代码.本篇随笔介绍在我的项目中经常用到的各种界面组件和它的界面效果,以便在实际开发中进行相应的参考,提高开发效率. 本篇继续上一篇随笔<循序渐进VUE+Element 前端应用开发(25)--- 各种界面组件的使用(1)>,对界面控件进行进一步…
在后台管理和中台项目中, table是使用率是特别的高的, 虽然element已经有table组件, 但是分页和其他各项操作还是要写一堆的代码, 所以就在原有的基础上做了进一步的封装 所涵盖的功能有: 内容展示 , 操作栏 , 选择框 , 分页 , 图片渲染 , 开关 , 过滤器(时间格式化) 直接上代码 组件: <template> <div class="hello"> <el-table :data="tableData" sty…
封装 axios 模块 封装背景 使用axios发起一个请求是比较简单的事情,但是axios没有进行封装复用,项目越来越大,会引起越来越多的代码冗余,让代码变得越来越难维护.所以我们在这里先对 axios 进行二次封装,使项目中各个组件能够复用请求,让代码变得更容易维护. 封装要点 统一 url 配置 统一 api 请求 request (请求) 拦截器,例如:带上token等,设置请求头 response (响应) 拦截器,例如:统一错误处理,页面重定向等 根据需要,结合 Vuex 做全局的…
封装 axios 模块 封装背景 使用axios发起一个请求是比较简单的事情,但是axios没有进行封装复用,项目越来越大,会引起越来越多的代码冗余,让代码变得越来越难维护.所以我们在这里先对 axios 进行二次封装,使项目中各个组件能够复用请求,让代码变得更容易维护. 封装要点 统一 url 配置 统一 api 请求 request (请求) 拦截器,例如:带上token等,设置请求头 response (响应) 拦截器,例如:统一错误处理,页面重定向等 根据需要,结合 Vuex 做全局的…
相信普通的vue组件大家都会写,定义 -> 引入 -> 注册 -> 使用,行云流水,一气呵成,但是如果我们今天是要自定义一个弹窗组件呢? 首先,我们来分析一下弹窗组件的特性(需求): 0. 轻量 –一个组件小于 1Kib (实际打包完不到0.8k) 1. 一般都是多处使用 –需要解决每个页面重复引用+注册 2. 一般都是跟js交互的 –无需 在<template>里面写 <toast :show="true" text="弹窗消息"…
介绍 这是一个是基于element-UI的导航菜单组件基础上,进行了二次封装的菜单组件,该组件以组件递归的方式,实现了可根据从后端接收到的json菜单数据,动态渲染多级菜单的功能. 使用方法 由于该组件是基于element-UI进行二次封装的,所以在使用该组件时请务必安装element-UI(安装方式猛戳这里),安装好element-UI后,只需将该组件文件夹SideBar导入到现有项目中即可使用. 工作流程 组件封装好之后,由父组件调用该组件,父组件先向后端发送请求获取菜单数据,然后将菜单数据…