那些年微信小程序走过的路和踩过的坑

文章目录


前言

一直是零零散散的学习模块,整理下


微信小程序

日常笔记(2022)

实战项目走过的坑

6、 @微信使用插件生成自定义海报并下载好海报, 下载到手机时候只有文字没有图片(真机测试正常,只有推到体验才出现这个问题)

日常笔记(2020)

1、 @微信小程序不同账号下小程序之间跳转之
2、 @微信小程序线上自动版本更新
3、 @微信小程序最新授权信息
4、 @js页面中引用js文件----之 -----子页面js使用父页面js里的方法或者调用父页面数据
5、 @微信小程序组件使用
5、 @微信canvas画环形百分比图型手机做适配
6、 @map数据类型与Array相结合渲染页面

实战项目走过的坑

1、echart微信使用:

@自定义echart.js
@动态更新数据,统一存放代码简介版

那些年开发小程序踩过的坑…别踩… 坑

1、点击事件传参中target与currentTarget获取参数的区别

刚开始开发没注意具体区别 , 混合使用target与currentTarget获取参数 : 测试报错"errMsg":“navigateTo:fail page “pages/realTime/” is not found”,

问题分析:是因为点击事件和参数是定义在父级标签,使用了e.target.dataset获取参数,而不小心点中的子级标签,就出现这个问题 . …
当在父组件上设置点击事件并使用data-进行传参时候,正常点击父组件target与currentTarget都能够获取到参数,但是点击子级标签时候也触发获取到子级data-定义事件, target获取的是子级上data-参数;currentTarget获取的是父级标签data-传的参数

target:
currentTarget:
官网解释:连接

2、微信小程序获取子组件实例踩坑

问题 :
微信小程序获取子组件实例 let obj = this.selectComponent('#garden') , ‘Cannot read property 'changeSelect' of null’报错?

分析原因
子组件没有加载完成就调用子组件DOM节点 ,我是因为组件引用放在wx:else或者wx:if里边了并且在标签不存在情况下获取子组件实例了

解决方法
1 . 去掉wx:if就可以了,
2 . 判断等子组件存在并且加载完成后在使用, 如果没有使用if情况下报错可以在setTimeout中调用子组件实例

3、微信小程序上线同一文件路径下接口报404?url完全正确情况下本地测试完好,上线后报404

微信小程序上线同一路径下接口报错404,有可能是上线文件目录含有以wx开头特殊字被剔除

3、微信使用iconfont预览报错getElementsByTagName
4.支付宝开发布局转微信布局混乱

从支付宝小程序转微信,习惯性直接给page设置padding:20px;结果不起作用
原因应该是使用和模型不同
box-sizing:border-box;就可以了


版权声明:本文为men_gqi原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。