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

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

问题描述:

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

代码示例:

UI组件库 : Ding Design

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

modal是上述UI库的组件

期望效果为:

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

代码如下:

html 复制代码
<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>
css 复制代码
.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

代码改成:

html 复制代码
<modal show="{{show}}" buttonList='null' disableScroll='{{false}}'>
</modal>

至此问题完美解决




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

  1. 钉钉小程序缓存太严重,使用onCheckForUpdate检测是否有新版本,根本就没有用!!!!!
  2. 缓存延迟,导致验证真机效果太费时间
  3. 对于头部自定义兼容性不好!!!!
  4. 同样API写法,微信小程序完美展示,钉钉就是修改不了
  5. 自己团队出的UI组件,坑也是多的没谱!!!
相关推荐
吴声子夜歌6 天前
小程序——布局示例
小程序
luffy54596 天前
微信小程序页面使用类似filter函数的wxs语法
微信小程序·小程序
Slow菜鸟6 天前
微信小程序开发(二)目录结构完全指南
微信小程序·小程序
小小王app小程序开发6 天前
海外盲盒小程序抽赏玩法分析(附跨境技术落地要点)
小程序
一叶星殇6 天前
微信小程序请求拦截器踩坑:避免重复刷新 token
微信小程序·小程序
hello kitty w6 天前
4. 基本语法
小程序
CHU7290356 天前
探索淘宝扭蛋机小程序:创意互动与趣味体验的融合
小程序
头发还在的女程序员6 天前
【免费下载】企业能源管理系统
小程序·策略模式·能源管理
吴声子夜歌6 天前
小程序——样式与布局
小程序
hello kitty w7 天前
3.小程序方法的封装
javascript·小程序