uni-app中uni.showActionSheet的参数popover.width设置弹出窗口宽度无效
uni-app中uni.showActionSheet的参数popover.width设置弹出窗口宽度无效
| 项目 | 信息 |
|---|---|
| 产品分类 | uniapp/H5 |
| PC开发环境操作系统 | Mac |
| PC开发环境操作系统版本号 | 13 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 4.12 |
| 浏览器平台 | Edge |
| 浏览器版本 | 123.0.2420.97 |
| 项目创建方式 | HBuilderX |
操作步骤:
uni.showActionSheet({
itemList: ['修改密码', '退出'],
popover: {
width: 100,
top: getApp().globalData.windowInfo.windowTop,
left: getApp().globalData.windowInfo.windowWidth - 160
},
success: (e) => {
console.log(e.tapIndex);
uni.showToast({
title: "点击了第" + e.tapIndex + "个选项",
icon: "none"
})
}
})
预期结果:
- 宽度100
实际结果:
- 宽度300
bug描述:
uni.showActionSheet的参数popover.width设置弹出窗口宽度无效 不管怎么设置,窗口宽度始终是300px

更多关于uni-app中uni.showActionSheet的参数popover.width设置弹出窗口宽度无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
感谢反馈,问题已确认,我看看如何解决,已加分
更多关于uni-app中uni.showActionSheet的参数popover.width设置弹出窗口宽度无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这个问题有修复计划了吗?现在一直很宽,看着很别扭。
在 uni-app 中,uni.showActionSheet 是一个用于显示操作菜单的 API。根据官方文档,uni.showActionSheet 的参数中并没有 popover.width 这个选项,因此设置 popover.width 是无效的。
uni.showActionSheet 的常用参数包括:
itemList: 必填,按钮的文字数组,数组长度最大为 6。itemColor: 可选,按钮的文字颜色,默认为#000000。success: 可选,接口调用成功的回调函数。fail: 可选,接口调用失败的回调函数。complete: 可选,接口调用结束的回调函数(调用成功、失败都会执行)。
如果你需要自定义弹出窗口的宽度或其他样式,uni.showActionSheet 本身并不支持这些高级定制。你可以考虑使用其他组件或自定义弹窗来实现更复杂的样式需求。
例如,你可以使用 uni-popup 组件来实现自定义的弹窗样式,或者使用 uni-modal 组件来创建一个模态对话框,并通过 CSS 来控制其宽度和其他样式。
以下是一个使用 uni-popup 组件的简单示例:
<template>
<view>
<button @click="showPopup">显示自定义弹窗</button>
<uni-popup ref="popup" type="bottom">
<view class="custom-popup">
<view class="popup-item" @click="handleClick('选项1')">选项1</view>
<view class="popup-item" @click="handleClick('选项2')">选项2</view>
<view class="popup-item" @click="handleClick('选项3')">选项3</view>
</view>
</uni-popup>
</view>
</template>
<script>
export default {
methods: {
showPopup() {
this.$refs.popup.open();
},
handleClick(item) {
console.log('点击了:', item);
this.$refs.popup.close();
}
}
};
</script>
<style>
.custom-popup {
width: 300px; /* 自定义宽度 */
background-color: #fff;
border-radius: 10px;
padding: 20px;
}
.popup-item {
padding: 15px;
border-bottom: 1px solid #eee;
}
.popup-item:last-child {
border-bottom: none;
}
</style>

