一种可复用嵌套性公共模态窗口的方法技术

技术编号:35601239 阅读:16 留言:0更新日期:2022-11-16 15:22
本发明专利技术提供一种可复用嵌套性公共模态窗口的方法,涉及公共模态窗口技术领域。该可复用嵌套性公共模态窗口的方法,包括以下过程:S1.首先定义一个名为commModal的vue组件文件,并编写好template分片文件;S2.通过组件javascript逻辑体props属性接收5个外部属性值,具体为:

【技术实现步骤摘要】
一种可复用嵌套性公共模态窗口的方法


[0001]本专利技术涉及公共模态窗口
,具体为一种可复用嵌套性公共模态窗口的方法。

技术介绍

[0002]在软件产品的开发过程中出现最多的就是交互对话框这种人机交互操作用来配置相关的数据,用来下发给服务器,服务器接收读取相关数据,调用系统命令执行各项操作,这种对话框我们称之为模态框。
[0003]目前业界处理模态框的实现方案有多种方法,但做到引用值统一复用配置是需要基于现在项目代码而定,这需要涉及对应项目需求及设计方案,因产品需要有大量配置层面的数据注入,会有不少单层模态框和多级模态框出现,这就需要封装一套完备的可复用组件方法。
[0004]我们常规开发过程中使用较多的是layer插件,该插件基于jquery封装,但是该方法缺少固定的模态框主框架,需要根据不同型号定制不同元素,导致内容过多,代码不易维护,并且代码量偏大,函数利用率不高,公用代码混写过多,结构管理不够清晰,会导致开发人员工作量加大,后期延展版本分支不易维护,冗余代码过多,使对象数据调试性变差,与中间件人员沟通变复杂。

技术实现思路

[0005](一)解决的技术问题
[0006]针对现有技术的不足,本专利技术提供了一种可复用嵌套性公共模态窗口的方法,解决了常规的开发过程缺少固定的模态框主框架,需要根据不同型号定制不同元素,导致内容过多,代码不易维护,并且代码量偏大,函数利用率不高,公用代码混写过多,结构管理不够清晰,会导致开发人员工作量加大,后期延展版本分支不易维护,冗余代码过多,使对象数据调试性变差,与中间件人员沟通变复杂的问题。
[0007](二)技术方案
[0008]为实现以上目的,本专利技术通过以下技术方案予以实现:一种可复用嵌套性公共模态窗口的方法,包括以下过程:
[0009]S1.首先定义一个名为commModal的vue组件文件,并编写好template分片文件;
[0010]S2.通过组件javascript逻辑体props属性接收5个外部属性值,具体为:
[0011]①
title:类型为String,默认值为提示;
[0012]②
confirmFn:类型为Function;
[0013]③
isShow:类型为Boolean,默认值为false;
[0014]④
isFooter:类型为Boolean,默认值为false;
[0015]⑤
diaWidth:类型为String,无默认值,为必传;
[0016]⑥
confirmText:类型为String,默认值为“确定”。
[0017]S3.组件最外层根节点使用v

if定义模态框是否显示,值为配置的dialogShow;
[0018]S4.组件当被关闭前的方法before

close采用自定义公有方法handleClose,el

dialog组件第一个节点自带slot具名插槽title,此插槽将接收一个同名称为title的变量作为对话框的自定义标题;
[0019]S5.将插槽内容注入到ele

dialog组件的title内部插槽里面;
[0020]S6.当外部事件未触发模态对话框显示,该组件内部控制显示的dialogShow值默认为false,el

dialog对话框虽然存在,但不会显示;
[0021]S7.当props接受到isShow值变成true后,将会改变组件内控制显示的值dialogShow为true,此时对话框出现;
[0022]S8.当成功执行后会给上级组件呈递一个名为finishCb的自定义事件,该事件将会携带isShow值为false的数据对象,提示上级组件关闭对话框。
[0023]优选的,所述组件的第一层子元素为elementUI组件el

dialog,使用其自带属性visible配置为我们定义的dialogShow共有属性值,用以控制对话框是否显示与隐藏,对话框宽度width使用公有属性值diaWidth。
[0024]优选的,所述步骤S5中组件的第二个节点slot具名插槽为container,用来接收commModal组件外自定义内容的注入。
[0025]优选的,所述步骤S5中组件的第三个节点为footer,同样是内部具名插槽接收内容,将会注入到el

dialog组件里面。
[0026]优选的,所述步骤S5中插槽内容主要存放主组件el

dialog点击确定后所触发的行为,该内容包含两个元素节点,确定与取消按钮,确定按钮所绑定的事件是所定的公有方法confirm函数,取消按钮则为该组件内定义方法handClose函数,确定按钮还会接收自定义文字内容。
[0027]优选的,所述步骤S6中组件内watch时刻检测着isShow的变化,外部事件会给我们定义的commModal组件传递各个方法与值。
[0028]优选的,所述步骤S7中对话框出现的同时外部事件会传递title标题文字、本次对话框的宽度、点击关闭前所触发的回调函数handleClose,以及接收点击确定后所触发的自定义函数。
[0029]优选的,所述步骤S8中成功执行后如果用户点击取消则会不执行任何行为事件直接传值关闭对话框。
[0030](三)有益效果
[0031]本专利技术提供了一种可复用嵌套性公共模态窗口的方法。具备以下有益效果:
[0032]1、本专利技术提供了一种可复用嵌套性公共模态窗口的方法,该方法对项目开发选用目前领域较热门的Vue框架,采用的是elementUi组件集里面的dialog组件,对话框自带相关的api方法,合理应用自带的api方法二次封装成一个能够复用、拥有固定子框架的公用模态框,通过外部方法控制对话框的显示与隐藏,以及自定义对话框的模态框宽度、触发行为事件等实现可复用嵌套性公共模态窗口,实现逻辑更清晰、可读性强的效果。
[0033]2、本专利技术提供了一种可复用嵌套性公共模态窗口的方法,该方法对于开发团队的分工明确,更加容易控制,并且充分利用可以重用的代码,抽象出可公用的模块,具有可维护性强的特点,使用效果更好。
[0034]3、本专利技术提供了一种可复用嵌套性公共模态窗口的方法,该方法提供的公共模态窗口可兼容不同类型的弹框组件,从而能够更好的实现复用的嵌套性。
附图说明
[0035]图1为本专利技术的可复用模态框值传递映射示意图;
[0036]图2为本专利技术的模态框元素主结构示意图。
具体实施方式
[0037]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可复用嵌套性公共模态窗口的方法,其特征在于,包括以下过程:S1.首先定义一个名为commModal的vue组件文件,并编写好template分片文件;S2.通过组件javascript逻辑体props属性接收5个外部属性值,具体为:

title:类型为String,默认值为提示;

confirmFn:类型为Function;

isShow:类型为Boolean,默认值为false;

isFooter:类型为Boolean,默认值为false;

diaWidth:类型为String,无默认值,为必传;

confirmText:类型为String,默认值为“确定”。S3.组件最外层根节点使用v

if定义模态框是否显示,值为配置的dialogShow;S4.组件当被关闭前的方法before

close采用自定义公有方法handleClose,el

dialog组件第一个节点自带slot具名插槽title,此插槽将接收一个同名称为title的变量作为对话框的自定义标题;S5.将插槽内容注入到ele

dialog组件的title内部插槽里面;S6.当外部事件未触发模态对话框显示,该组件内部控制显示的dialogShow值默认为false,el

dialog对话框虽然存在,但不会显示;S7.当props接受到isShow值变成true后,将会改变组件内控制显示的值dialogShow为true,此时对话框出现;S8.当成功执行后会给上级组件呈递一个名为finishCb的自定义事件,该事件将会携带isShow值为false的数据对象,提示上级组件关闭对话框。2.根据权...

【专利技术属性】
技术研发人员:舒兴杰王垚孙立杜玉卓申大伟丁光辉胡罡孙风伟王泽广矫行洲王延生隋凯孙艺萌王小东杨小帅刘写辉
申请(专利权)人:北京天地和兴科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1