微信小程序常见问题

想必写过小程序的大家也都踩过不少坑了,(嗯嗯,真他妈多的坑),在这里呢,我也记录下我遇到过的一些坑。

1. map地图组件在移动视野结束后获取了两次数据

    //视野发生变化
    regionchange: function (e) {
      var that = this
      wx.showNavigationBarLoading()
      if (e.type == ‘end‘) {
        that.getLngLat()
      }
    },
    //视野发生变化后获取当前中间点的经纬度
    getLngLat: function () {
      var that = this
      this.mapCtx.getCenterLocation({
        success: function (res) {
          var curLongitude = res.longitude
          var curLatitude = res.latitude
          var data = { longitude: curLongitude, latitude: curLatitude }
          util.commonAjax(‘方法名‘, 2, data)
            .then(function (resolve) {
              if (resolve.statusCode == ‘200‘) {
                console.log(resolve.data)
                that.setData({
                  //获取当前经纬度并存入data
                  longitude: longitude,
                  latitude: latitude,
                  getNewMarkers: resolve.data.housingPositions
                })
                wx.hideNavigationBarLoading()
                console.log(‘触发了‘)
              }
          })
        }
      })
    }

e.type == ‘end‘的意思就是在移动视野结束后触发函数,在微信开发工具移动视野后,确实只触发了一次,然而远程真机调试时函数触发了两次,并出现地图多次来回抖动。(妈耶,当时就懵逼了)

当然,最后问题解决了,只是不将移动后获取的经纬度传入data。这个最大的坑就是,工具触发一次,真机触发两次,还以为是手机的问题,于是各种苹果、安卓一顿扫,不出意外的都触发两次,根本找不到原因在哪。

2. textarea多行输入框组件层级最高,导致一些页面无法实现

textarea组件的坑太多,我一般是能不用就不用,谁用谁痛苦。

    1. bug: 微信版本 6.3.30,textarea 在列表渲染时,新增加的 textarea 在自动聚焦时的位置计算错误。
    2. tip: textarea 的 blur 事件会晚于页面上的 tap 事件,如果需要在 button 的点击事件获取 textarea,可以使用 form 的bindsubmit。
    3. tip: 不建议在多行文本上对用户的输入进行修改,所以 textarea 的 bindinput 处理函数并不会将返回值反映到 textarea 上。
    4. tip: textarea 组件是由客户端创建的原生组件,它的层级是最高的。
    5. tip: 请勿在 scroll-view 中使用 textarea 组件。
    6. tip: css 动画对 textarea 组件无效。

textarea组件的层级是最高的,所以有些页面就不是很好实现。

当然,我这里显示没问题,因为我已经处理过了。而这里的问题其实是textarea的文本内容会出现在你的侧边栏里,非常霸道....

处理办法: 在显示侧边栏的时候,隐藏textarea组件,获取其中的文本,传给一个‘‘标签,使其视觉上效果一样,隐藏侧边栏时,显示textarea组件,将‘‘标签隐藏,堪称完美。

    Page({ data: { showTextarea: true, //是否显示textarea组件 }, //点击显示侧边栏 translateX: function () { this.setData({ showTextarea: false }) }, //点击阴影 maskClick: function () { this.setData({ showTextarea: true }) }, }) 

原文地址:https://www.cnblogs.com/wuzhendong/p/9002564.html

时间: 2024-08-03 05:37:19

微信小程序常见问题的相关文章

微信小程序常见问题集合(长期更新)

程序问题: 森哥解答:1.找不到所要替换的文件  问题原因:开发工具版本不正确,老版本不支持 解决方案:确保下载的程序版本在0.9.092100以上  2.Failed to load resource: net::ERR_NAME_NOT_RESOLVEDhttp://1709827360.appservice.open.weixin.qq.com/appservice  问题原因:通常是由于系统设置了代理如Shadowsocks等. 解决方案:关闭代理,或者依次点击工具栏"动作"-

微信小程序常见问题大全

一.什么是微信小程序 小程序相当于运行在微信上无需安装的"APP",微信小程序容纳了千万APP平台,带你逛遍全世界的吃喝玩乐购,足不出户享受不一样的待遇.有了小程序,相当与在微信里面开了一个自己独立的店,微信里10亿用户都可以到这个店里面消费,并且具有支付功能.导航功能.搜索附近的小程序都能看到你的店. 二.小程序有哪些流量入口? 1.附近小程序列表 2.附近小程序列表广告 3.公众号profile页相关小程序 4.公众号自定义菜单 5.公众号模板消息 6.公众号文章,文字形式.图片形

【尝新】微信小程序初体验

文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/?t=1474644089434 根据文档地址中下载微信开发工具后,按照文档指引可以创建一个快速体验的小demo ,样例中的文件说明如下: 小程序包含一个描述整体程序的 app 和多个描述各自页面的 page. 一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: app.js 是 小程序逻辑 app.json 是 小程序公共设置 app.wxss 否 小程序公共样式表 一个小程序页面由四个文

微信小程序小应用资源汇总整理

微信小应用资源汇总整理 开源项目 WeApp - 微信小程序版的微信 wechat-weapp-redux-todos - 微信小程序集成Redux实现的Todo list wechat-weapp-gank - 微信小程序版Gank客户端 wechat-dribbble - 微信小程序-Dribbble wechatApp-demo - 微信小程序 DEMO weapp-ide-crack - 微信小应用资源破解 API - API 文档 weapp-quick - 微信小应用示例代码 wea

微信小程序(应用号)开发资源汇总整理 - 一直更新中

开源项目 wechat-weapp-gank - 微信小程序版Gank客户端 wechat-dribbble - 微信小程序-Dribbble wechatApp-demo - 微信小程序 DEMO weapp-ide-crack - 微信小应用资源破解 API - API 文档 weapp-quick - 微信小应用示例代码 weapp-gold - 掘金主页 微信小应用示例 weapp-douban - 豆瓣电影 微信小程序 wechat-app-zhihudaily - 微信小程序版的知乎

微信小程序之初探(常见语法 VS vue)常见问题(点击不生效,数据绑定)

最近在调研微信小程序开发,对于一个前端小白来说,在各种框架都还用不熟的情况下,再来开发小程序确实还是不容易. 小程序出来之初,听过演讲,看过一点点儿视频,感觉和angular语法有点相似(PS:那是也是只了解一点点儿angular语法): 近两天开始尝试开发小程序,讲真,语法和angular和vue都很相似,小程序提供的语法现在还算全面,很多方法都有提供: 下面简述一下常用方法的使用: 一:数据绑定: html js 直接把数据写在data里面就行了,这样数据可以直接渲染到页面上, 那么问题来了

微信小程序之仿微信漂流瓶

周末找事做做.看到微信里有个漂流瓶.试着敲了敲. 这里是用leancloud做后台.涉及到语音和文字的储存,查询.自己不会写后台代码,对于我算是个福利. 欢迎交流! 技术点: 1.微信小程序开发之录音机 音频播放 动画 (真机可用) 2.微信小程序开发之用户系统 一键登录 获取session_key和openid 3.微信小程序开发之常见问题 不在以下合法域名列表中 wx.request合法域名配置 4.微信小程序开发之本地图片上传(leancloud) 下面带图说模块: 1.主页面 三个but

微信小程序入门——怎么建多个项目?(导入官方Demo程序进行学习)

昨天1月9日微信小程序发布,顿时被朋友圈刷爆,今天看了一下官方文档,自己开始一步一步搭建环境体验小程序开发. 常见问题: 1.微信小程序开发是否需要重新创建开发者账号? 需要,即使之前申请了微信服务号,并认证过,也需要重新申请小程序. 在微信公众平台官网首页(mp.weixin.qq.com)点击右上角的“立即注册”按钮.选择“小程序”,按提示步骤注册即可. 2.个人能否申请小程序? 不能,目前只支持企业.个体工商户.政府.媒体.其他组织. 3.没有资格申请小程序,能否开始小程序开发? 可以,下

微信小程序开发环境搭建

微信小程序可谓是今天最火的一个名词了,一经出现真是轰炸了整个开发人员,当然很多App开发人员有了一个担心,微信小程序的到来会不会给移动端App带来一个寒冬,身为一个Android开发者我是不相信的,即使有,那也是很遥远的未来. 不管微信小程序是否能颠覆当今的开发格局,我们都要以好奇的心态去接收,去学习.不排斥新技术,所以,心动不如行动,赶紧先搭建一个微信小程序开发工具.那么接下来就让我们一起来开始吧. 微信已于9月23号晚发布了最新开发工具,以及官方文档,新版开发工具支持无appid登录开发者工