uview中SwipeAction滑动单元格如何优雅地将其关闭,亲测实用!!!

最近在做项目,用到了SwipeAction 滑动单元格,可是我发现当点击按钮区域的时候无法将滑块恢复原样。

如下图1和图2:我在点击按钮区域之外的时候发现能够将滑块恢复到原样,也注意到是通过DOM操作让滑块恢复原样的。可是我尝试用ref想要拿到它的style来改动它的样式,结果style为undefinition。我寻思了许久,也尝试了各种办法,也翻遍了官方文档,最终我发现了一种比较优雅且实用的方法。干货在下文。

图1
图2

直接上干货(以Vue2为例)

1.直接给组件项添加一个ref。代码如下:

<u-swipe-action-item ref="item">

2.组件内部有一个closeHandler方法,咋们直接根据组件内部的方法封装一个优雅的方法,需要的时候直接调用即可。代码如下:

shut(){

this.$refs.item.forEach(item=>item.closeHandler(true))
           }

  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
如果你使用uviewSwipeAction组件时,滑动操作打开或关闭某个组件无效,可能是因为你没有正确地使用组件。 首先,确保你已经正确地导入了SwipeAction组件并在页面注册。然后,在SwipeAction组件,需要设置"left"或"right"属性,这将会生成左滑或右滑菜单,你需要在这些菜单添加你想要的组件。 例如,以下代码定义了一个包含左滑和右滑菜单的SwipeAction组件: ```html <template> <view> <u-swipe-action :left="leftActions" :right="rightActions"> <view class="item">这是SwipeAction组件</view> </u-swipe-action> </view> </template> <script> import { uniIcons } from '@/static/js/uni-icons.js'; export default { data() { return { leftActions: [ { name: '删除', color: '#fff', icon: uniIcons.trash, background: '#ed3f14' } ], rightActions: [ { name: '编辑', color: '#fff', icon: uniIcons.edit, background: '#007aff' } ] }; } }; </script> ``` 在上面的代码,我们定义了"leftActions"和"rightActions"数组,它们分别包含左滑和右滑菜单的配置。在这些配置,我们设置了"icon"属性来添加图标,"name"属性来显示菜单名称,"color"属性来设置文字颜色,"background"属性来设置背景颜色。最后,我们将这些菜单配置传递给SwipeAction组件的"left"和"right"属性。 如果你按照上面的示例代码配置SwipeAction组件后,仍然无法打开或关闭某个组件,请检查你的代码是否有语法错误,并确保你正在正确地使用SwipeAction组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值