前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >小程序bug

小程序bug

作者头像
EchoROne
发布2022-08-15 08:26:17
8730
发布2022-08-15 08:26:17
举报
文章被收录于专栏:玩转大前端

记录下本人在写小程序时遇到的一系列难题与bug

  1. 菜单隐藏消失的动画效果(主要用了animation、transformX控制left的值),在设置wx-charts图表在菜单显示时隐藏,最后发现在安卓上正常运行,在苹果6手机上卡顿严重,怀疑是wx-charts框架兼容问题
  2. 实例上挂载的数据长度有限制。最大长度为1048576。可手动删除一些无用数据再setData

3. wx-canvas线状图中多条线展示时,点击显示tooltip后苹果手机会出现无法滚动的现象。得添加属性值disable-scroll="{{false}}"

4. cover-view其实很多都是不支持的,比如动画,如果你想要在cover-view上边加动画你会发现没有效果,虽然在模拟器里边可以显示动画,但是在真机测试的时候是没有效果的。

还有就是cover-view虽然可以设置overflow: scroll,但是不支持动态的去变换overflow的属性值。

还有就是cover-view它会有默认设置的样式:white-space: nowrap; line-height: 1.2; display: block;所以你会看到在cover-view里边写的文字不会换行,而是超出的内容直接裁剪掉。

最后就是我在cover-view上边绑定touch事件的时候在真机上也没有效果,大概是cover-view目前应该还是没有支持touch事件吧也有可能是cover-view不支持动画导致,总之,cover-view目前并没有我们想的那么强大,只能实现一些简单的功能

5. 一般这样创建一个日期变量

代码语言:javascript
复制
var d = new Date("2017-08-11 12:00:00");

发现在iOS中不兼容,返回valid Date。IOS中不支持 - 连接日期需要写成

代码语言:javascript
复制
var d = new Date("2017-08-11 12:00:00".replace(/-/g, "/"));

这样来兼容ios,而且年月日都得传,比如不能传

代码语言:javascript
复制
new Date("2016/09")

ios会返回空对象。而且小程序picker组件也必须传start属性,否则在苹果上会从1年开始选择

6. 开发工具不用勾选ES6转ES5,mpvue框架已经自动转换了。只用勾选上传代码时样式自动补全以及上传代码时自动压缩

7. 小程序的cover-view组件有bug,比如本项目中要实现导航栏菜单遮住所在页面中的多张图表时需放在最后一张图表的组件标签内部,如

代码语言:javascript
复制
<div class="nav-place"></div>

<chart :class="{'hide-canvas': isHideCharts}" v-if="userGrowCanvas.line" :canvas-data="userGrowCanvas">

<chart :class="{'hide-canvas': isHideCharts}" v-if="channelCanvas.line" :canvas-data="channelCanvas">
    <NavigationBar :navTitle="navTitle" @show-menu="showMenu" @hide-menu="hideMenu"></NavigationBar> 
</chart>

因为设置了fixed固定在视窗顶部,因此用一个容器占用位置防止普通元素置顶被挡住

8. wx.request 请求返回报错 convert to UTF8 fail

跳坑《八十一》request:fail response data convert to UTF-8 fail(bom问题-小程序综合区-微信小程序开发社区-微信小程序联盟

9. 微信小程序中的button的border属性或者圆角,都是写在after里面的

10. cover-view组件的padding再苹果手机上无效,在安卓机上有效。通过设定固定宽度解决

11. mpvue-echarts饼状图pie在小程序中点击圆环后中间空白部分会随机涂满颜色

12.

小程序 自定义弹窗后禁止屏幕滚动(滚动穿透)

13. wx.navigateTo不能滥用,因为他会保存页面,小程序又有只能打开10个页面的限制,因此滥用可能导致导航跳转失效

14. 小程序没有监听页面滚动停止的事件,可用计时器监听

代码语言:javascript
复制
  onPageScroll: function(e) {
    clearTimeout(this.timeoutId);
    this.isNotScroll = false;

    // 设计时器以监听页面停止滚动
    this.timeoutId = setTimeout(
      function() {
        this.isNotScroll = true;

        delete this.timeoutId;
      }.bind(this),
      100
    );
  },
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-08-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 记录下本人在写小程序时遇到的一系列难题与bug
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档