解决VantUI popup 弹窗不弹出或无蒙层的问题


Posted in Javascript onNovember 03, 2020

背景

####组件PopupTime.vue

把vant官网的popup+时间选择器抽成组件:

popup1show: true 即弹窗显示

<template>
 <div class="PopupTime">
  <van-popup v-model="popup1show" position="bottom" :overlay="true" @click-overlay="clickOverlay">
   <van-datetime-picker show-toolbar
         :title="popupTitle.popupName"
         v-model="currentDate"
         type="datetime"
         @cancel="onCancel" @confirm="onConfirm" class="font14"/>
  </van-popup>
 </div>
</template>

<script type="text/ecmascript-6">

 export default {
  props:{
   popupTitle:Object,
  },


  data() {
   return {
    popup1show: true,
    currentDate: new Date(),
   };
  },
 methods:{
 clickOverlay() {
 this.onCancel();
 },
 onCancel() {},
 onConfirm(value, index) {},
 }
 </script>

test.vue调用该组件

<popup-time 
 v-show="isShowDelay" 
 :popupTitle="popupDelayT"
 @PopupDelayTime="fromDelayT">
</popup-time>
//import PopupTime组件,并在components中注册

看似没什么问题,但出现isShowDelay为rue时,弹窗显示没有蒙层,第二次点击就点不开了。

问题解决

以为是vant的问题,找了半天结果是v-show的问题,改成v-if就没问题了。

<popup-time 
 v-if="isShowDelay" 
 :popupTitle="popupDelayT"
 @PopupDelayTime="fromDelayT">
</popup-time>
//import PopupTime组件,并在components中注册

奇奇怪怪的问题,去官网上瞅一眼:

v-if vs v-show

v-if 是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。

v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。

相比之下,v-show 就简单得多——不管初始条件是什么,元素总是会被渲染,并保留在 DOM 中。v-show 只是简单地切换元素的 CSS 属性 display

一般来说,v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好。

嗯。。。。还是不懂这个问题是怎么出现的??

补充知识:vant--------Picker与Popup 选择器和遮罩的完美结合

初学前端的小伙伴肯定遇到过这样的问题吧,想写一个下拉,又想写一个遮罩。两个合起来用,然后写一个遮罩height:100%,width:100%,z-index:999,等等去定

繁琐又麻烦 体验感还不一定加

将vant 的picker 与popup集合 方便快捷实用

1.在main.js 里引入

import { Popup } from 'vant';
Vue.use(Popup);
import { Picker } from 'vant'; 
Vue.use(Picker);

2.

<van-popup v-model="show" position="bottom" :overlay="true">
 <van-picker show-toolbar title="请选择区域代理城市" :columns="columns" @cancel="onCancel" @confirm="onConfirm" @change="onChange" />
</van-popup>

position:你可以自己定义 top or bottom or center 当然一般是bottom

:overlay:false or true看个人需求

title:根据你自己需求定义

js:

解决VantUI popup 弹窗不弹出或无蒙层的问题

效果图:

解决VantUI popup 弹窗不弹出或无蒙层的问题

以上的列子 都是小生自己实践 ,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript this调用规则说明
Mar 08 Javascript
Jquery之Ajax运用 学习运用篇
Sep 26 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
Aug 27 Javascript
jQuery Migrate 1.1.0 Released 注意事项
Jun 14 Javascript
用jquery模仿的a的title属性的例子
Oct 22 Javascript
jQuery简单实现验证邮箱格式
Jul 15 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
Aug 10 Javascript
原生JS实现在线问卷调查投票特效
Jan 03 Javascript
JS获取指定月份的天数两种实现方法
Jun 22 Javascript
从0到1构建vueSSR项目之路由的构建
Mar 07 Javascript
JS中FormData类实现文件上传
Mar 27 Javascript
vue实现购物车结算功能
Jun 18 Javascript
wepy--用vantUI 实现上弹列表并选择相应的值操作
Nov 03 #Javascript
使用vant的地域控件追加全部选项
Nov 03 #Javascript
vue vant中picker组件的使用
Nov 03 #Javascript
vue-amap根据地址回显地图并mark的操作
Nov 03 #Javascript
ant-design-vue中tree增删改的操作方法
Nov 03 #Javascript
Vue+Vant 图片上传加显示的案例
Nov 03 #Javascript
vant-ui AddressEdit地址编辑和van-area的用法说明
Nov 03 #Javascript
You might like
php mail to 配置详解
2014/01/16 PHP
体育彩票排列三组选三算法分享
2014/03/07 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
PHP实现获取第一个中文首字母并进行排序的方法
2017/05/09 PHP
JS OOP包机制,类创建的方法定义
2009/11/02 Javascript
IE JS无提示关闭窗口不提示的方法
2010/04/29 Javascript
Javascript的时间戳和php的时间戳转换注意事项
2013/04/12 Javascript
jquery鼠标滑过提示title具体实现代码
2013/08/06 Javascript
悬浮数字的实现案例
2014/02/19 Javascript
form.submit()不能提交表单的错误原因及解决方法
2014/10/13 Javascript
javascript使用appendChild追加节点实例
2015/01/12 Javascript
JavaScript获取表单enctype属性的方法
2015/04/02 Javascript
深入理解Angular.JS中的Scope继承
2017/06/04 Javascript
AngularJS中ng-class用法实例分析
2017/07/06 Javascript
JavaScript惰性载入函数实例分析
2019/03/27 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
javascript实现电商放大镜效果
2020/11/23 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
使用Python的Django框架实现事务交易管理的教程
2015/04/20 Python
Python读写unicode文件的方法
2015/07/10 Python
基于Django contrib Comments 评论模块(详解)
2017/12/08 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
python找出因数与质因数的方法
2019/07/25 Python
python如何通过twisted搭建socket服务
2020/02/03 Python
python实现人机猜拳小游戏
2020/02/03 Python
django项目中新增app的2种实现方法
2020/04/01 Python
python软件测试Jmeter性能测试JDBC Request(结合数据库)的使用详解
2021/01/26 Python
让IE支持HTML5的方法
2012/12/11 HTML / CSS
美国时尚女装在线:Missguided
2016/12/03 全球购物
国际金融专业自荐信
2014/07/05 职场文书
小学校本教研总结
2015/08/13 职场文书
《春酒》教学反思
2016/02/22 职场文书
python异步的ASGI与Fast Api实现
2021/07/16 Python