钉钉小程序 - - - - - overflow无效?

钉钉小程序 - - - - - overflow无效?

问题描述:

钉钉原生小程序,使用overflow:auto时,没有产生预期效果。

代码示例:

UI组件库 : Ding Design

Ding Design 是由钉钉设计团队、产品团队和终端技术团队共同打造的前端组件项目,目的是为了帮助开发者提高开发效率、提升产品体验。

modal是上述UI库的组件

期望效果为:

  • 自定义一个关闭弹窗按钮(因为该弹窗不支持点击蒙层股关闭)
  • 内容为可滚动的列表

代码如下:

<modal show="{{show}}" buttonList='null'>
  <view slot="modal-content" class="dtmini-modal-slot relative">
    <view class="absolute close" catchTap="triggerCancel"> x</view>
    <view class="scroll-wrap">
      <view a:for="{{ 20 }}">
        {{item}}
      </view>
    </view>
  </view>
</modal>
.scroll-wrap {
  height: 200rpx;
  overflow: auto;
}
.scroll-wrap view{
  height: 30rpx;
}

定位原因:

刚开始以为是这块代码写法有问题,重写之后依然无效。

  1. 在其他页面内使用overflow: auto;依然好用。
  2. 怀疑是外层有position或者display,对overflow有了影响,但是重写之后依然无效。
  3. 再尝试把 .scroll-wrap对应的标签换成scroll-view依然无效。
  4. 最后用排除法,在当前页面空白区域再次尝试使用overflow: auto;(不再modal里使用),发现能够正常滚动

SO,那就是Ding Design组件库的modal有问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!

解决办法:

方案一:
自己手写一个modal,不使用UI库组件

方案二:
组件库提供了对应的属性 disableScroll
在这里插入图片描述
代码改成:

<modal show="{{show}}" buttonList='null' disableScroll='{{false}}'>
</modal>

至此问题完美解决




需要狠狠吐槽钉钉团队相关的项目。

  1. 钉钉小程序缓存太严重,使用onCheckForUpdate检测是否有新版本,根本就没有用!!!!!
  2. 缓存延迟,导致验证真机效果太费时间
  3. 对于头部自定义兼容性不好!!!!
  4. 同样API写法,微信小程序完美展示,钉钉就是修改不了
  5. 自己团队出的UI组件,坑也是多的没谱!!!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值