wot-design-uni 嵌套弹窗时弹框会限定在父组件内

wot-design-uni 嵌套弹窗时弹框会限定在父组件内

问题出现步骤

在 SwipeAction 中使用 SelectPicker 代码如下(完整代码地址会贴在文章底部),效果

ts 复制代码
<template>
  <view class="px-3 py-20 text-center">
    <view @click.stop="closeOutside">
      <wd-swipe-action>
        <wd-select-picker v-model="value" label="基本用法" :columns="columns" @change="handleChange" />
        <template #right>
          <view class="action">
            <view class="button" style="background: #C8C7CD;" @click="handleAction('操作1')">
              操作1
            </view>
            <view class="button" style="background: #FFB300;" @click="handleAction('操作2')">
              操作2
            </view>
            <view class="button" style="background: #E2231A;" @click="handleAction('操作3')">
              操作3
            </view>
          </view>
        </template>
      </wd-swipe-action>
    </view>
  </view>
</template>

问题出现的原因

最开始猜测是 SwipeAction 包裹的问题,然后我使用了普通的 view 标签进行包裹发现是正常的效果,然后我去看了一下SelectPicker的实现代码,发现内部使用了ActionSheet,然后ActionSheet使用了Popup,接着我去官方githubissue搜索了一下相关的问题,找到了#900,其中提到了popup嵌套的问题

解决方案

按照issue中说的方法对代码进行了调整。查看

ts 复制代码
<template>
  <view class="px-3 text-center">
    <view class="my-20px">
      修改后代码
    </view>
    <view @click.stop="closeOutside">
      <wd-swipe-action>
        <wd-cell title="基本用法" value="内容" clickable @click="handleSelect" />
        <template #right>
          <view class="action">
            <view class="button" style="background: #C8C7CD;" @click="handleAction('操作1')">
              操作1
            </view>
            <view class="button" style="background: #FFB300;" @click="handleAction('操作2')">
              操作2
            </view>
            <view class="button" style="background: #E2231A;" @click="handleAction('操作3')">
              操作3
            </view>
          </view>
        </template>
      </wd-swipe-action>

      <wd-select-picker ref="select" v-model="value" label="基本用法" :columns="columns" use-default-slot @change="handleChange" />
    </view>
  </view>
</template>

完整版代码地址wot-design-ui-demo

效果1

效果2

效果3

相关推荐
我有一个object21 分钟前
uniapp上传文件报错:targetSdkVersion设置>=29后在Android10+系统设备不支持当前路径。请更改为应用运行路径!
前端·javascript·vue.js·uniapp
北极糊的狐25 分钟前
关于jQuery 事件绑定,记录常用事件类型及核心注意事项
前端·javascript·jquery
_Kayo_31 分钟前
vue3 computed 练习笔记
前端·vue.js·笔记
CodeSheep35 分钟前
VS 2026 正式发布,王炸!
前端·后端·程序员
无奈何杨35 分钟前
CoolGuard事件查询增加策略和规则筛选,条件结果展示
前端·后端
梦里不知身是客1138 分钟前
正则表达式常见的介绍
前端·javascript·正则表达式
初学小白...1 小时前
HTML知识点
前端·javascript·html
鹏多多1 小时前
flutter睡眠与冥想数据可视化神器:sleep_stage_chart插件全解析
android·前端·flutter
艾小码1 小时前
Vue3 脚本革命:<script setup> 让你的代码简洁到飞起!
前端·javascript·vue.js
IT_陈寒1 小时前
Python 3.12新特性解析:10个让你代码效率提升30%的实用技巧
前端·人工智能·后端