当前位置: 首页 > wzjs >正文

长春建网站一般要多少钱网站优化排名怎么做

长春建网站一般要多少钱,网站优化排名怎么做,织梦cms零基础做网站,佛山营销网站建设咨询前言 本文基于Api13 openCustomDialog弥补了CustomDialogController在使用上存在的诸多限制,实现了可以在任意位置上弹出,可以说是非常的方便;但是,在使用的时候遇到了一些小阻碍,比如一个页面中可能存在多个弹窗&…

前言

本文基于Api13

openCustomDialog弥补了CustomDialogController在使用上存在的诸多限制,实现了可以在任意位置上弹出,可以说是非常的方便;但是,在使用的时候遇到了一些小阻碍,比如一个页面中可能存在多个弹窗,而这些弹窗的隐藏顺序是不确定的,如何可以根据一定的条件,隐藏其中对应的弹窗呢,也就是,如何隐藏指定的弹窗,而不是最上层的弹窗。

目前呢,有两种实现方式,一种是通过存储ComponentContent来实现,另一种就是通过存储dialogId来实现,那么我们本篇文章,就针对这两种实现方式一一进行举例说明。

存储ComponentContent实现关闭指定Dialog

我们知道在openCustomDialog的时候,会接收一个ComponentContent,在关闭弹窗的时候也会使用到这个ComponentContent,所以,我们就可以对ComponentContent做一个简单的存储,这里的存储,不建议持久化存储,毕竟一般都是在一个页面中进行的,即便不在同一个页面上,我们也可以使用全局的变量存储,如何找到存储的ComponentContent呢?,这里推荐使用HashMap,键值对这种形式存储,可以很方便的使用key找到对应的value。

弹出Dialog

在弹窗弹出之后,使用map集合进行存储,在弹出Dialog的时候,需要传一个标识,也就是这个Dialog对应的key。

 private showDialog(key: string) {let uiContext = this.getUIContext()let promptAction = uiContext.getPromptAction()let contentNode = new ComponentContent(uiContext, wrapBuilder(TextDialog))promptAction.openCustomDialog(contentNode).then(() => {//临时存储this.mCustomDialogMap.set(key, contentNode)})}

隐藏Dialog

隐藏的时候,直接传递对应的key即可,记得,隐藏之后移除map中的元素。

private hideDialog(key: string) {if (this.mCustomDialogMap.hasKey(key)) {let uiContext = this.getUIContext()let promptAction = uiContext.getPromptAction()let contentNode = this.mCustomDialogMap.get(key)promptAction.closeCustomDialog(contentNode).then(() => {//隐藏之后删除this.mCustomDialogMap.remove(key)})}}

存储dialogId实现关闭指定Dialog

存储dialogId和存储ComponentContent逻辑上基本上是一致的,但是显示出UI的方式需要切换下,由于dialogId的获取,必须通过builder的方式,所以这里,传递ComponentContent改为内部定义的@Builder,如果想要使用全局的UI组件,可以在定义的Builder里进行。

弹出Dialog

private showDialog(key: string) {let uiContext = this.getUIContext()let promptAction = uiContext.getPromptAction()promptAction.openCustomDialog({builder: () => {this.TextDialog(message)}}).then((dialogId: number) => {this.mCustomDialogMap.set(key, dialogId)})}

隐藏Dialog

private hideDialog(key: string) {if (this.mCustomDialogMap.hasKey(key)) {let uiContext = this.getUIContext()let promptAction = uiContext.getPromptAction()let dialogId = this.mCustomDialogMap.get(key)promptAction.closeCustomDialog(dialogId)//隐藏之后删除this.mCustomDialogMap.remove(key)}}

相关总结

以上呢就是两种隐藏指定的Dialog方式,比较的简单,具体的场景,常见于,页面多个弹出Dialog,但是需要隐藏指定的Dialog场景,当然了,也适用于常见的普通场景。

http://www.dtcms.com/wzjs/117494.html

相关文章:

  • 大企业网站建设公司排名爱站网为什么不能用了
  • 做网页跳转网站线上推广的方式有哪些
  • 重庆规模最大的建网站公司肇庆seo
  • 计算机培训班价格北京seo优化多少钱
  • 中阔浩潮建设工程有限公司网站中国搜索引擎排行榜
  • 哪里网站建设专业建设网页
  • 怎么利用wordpress做网站百度极速版客服电话
  • 如何让百度收录自己的网站seo的主要工作是什么
  • 潍坊网站建设 世纪环球16楼网页模板代码
  • 做微信小程序是不是不用做网站百度游戏客服在线咨询
  • 忻州免费建网站360关键词指数查询
  • 北海网站制作公司营销心得体会感悟300字
  • 网站htm建设大数据营销系统软件
  • 怎么学习做网站西安seo培训机构
  • 做外链一般都用网站首页吗seo诊断分析在线工具
  • 成都建好的网站出租免费网站的软件
  • 深圳专业做网站服务大数据网络营销
  • 英文网站导航 源码企业全网推广
  • 论坛网站建设怎么让百度收录
  • 做网站前期需要准备什么seo对网店推广的作用
  • 做号网站吗近两年网络营销成功案例
  • 湛江seo建站赣州网站建设公司
  • 南昌做网站费用百度云搜索引擎入口官网
  • 免费做h5的网站百度旗下所有app列表
  • 郑州网站制作哪家便宜网站优化seo培
  • 锐速做网站个人怎么做免费百度推广
  • 校园网站建设的意见与建议百度知道下载安装
  • 深圳网站建设软件开发手机网站建设案例
  • 网站备案 营业执照副本流量神器
  • 论坛网站建设多少钱软文营销怎么做