本篇文章讲述了微信开发常见的问题,大家对微信开发常见问题不了解的话或者对微信开发常见问题感兴趣的话那么我们就一起来看看本篇文章吧, 好了废话少说进入正题吧

微信开发常见的问题总结

1.由于小程序wx.request()方法是异步的,在app.js执行ajax后,各分页加载app.js的全局数据时,无法按顺序加载。例://app.js

App({

ajax:function(){

let that = this;

wx.request({

url: 'https://a.com/url.php',

method: 'GET',

success: function(e){

that.data = 123;

}

})

};

})

//content.js

let app = getApp()

Page({

getData: function(){;

app.ajax();

console.log(app.data); //undefined

}

})

解决方法,使用Promise异步函数://app.js

App({

ajax:function(){

let that = this;

let promise = new Promise(function(resolve, reject){

wx.request({

url: 'https://a.com/url.php',

method: 'GET',

success: function(e){

that.data = 123;

resolve();

}

})

});

};

})

//content.js

let app = getApp()

Page({

getData: function(){;

app.ajax().then(()=>{

console.log(app.data); //123

});

}

})

2.图片只能获取原始宽高,无法获取现有宽高。不过image标签封装了mode属性,可以根据需求自行设置。

3.每个image标签底部有一条透明间隔,非padding,非margin。在图片前面做遮罩层时可能会被坑。

4.网络请求必须部署https

5.配置tabBar时,list参数中的pagePath参数至少需要包含app.json里pages数组中的第一个路径,否则会导致tabBar不显示。

6.tabBar跳转时无法带参数,解决方法://search.js

var app = getApp();

Page({

confirm: function(e){

//获取数据,添加到全局

let val = e.detail.value;

app.searchWord = val;

this.jump();

},

jump: function(){

//跳转tabBar

wx.switchTab({

url: '../index/index',

});

},

});

//index.js

var app = getApp();

Page({

onShow: function(e){

//获取全局数据

let val = app.searchWord;

}

});

//需要传递参数的页面在跳转前将数据添加到app.js里。需要接受参数的页面在onShow方法接受之前添加到app.js的数据。

7.小程序wx.request()方法请求的url必须是https开头

8.wx.request()使用post方法请求时,还需要加上header,header[content-type]值为application/x-www-form-urlencoded。例:

wx.request({

url: 'https://a.com/url.php',

data: {message: 123},

method: 'POST',

header: {

'content-type': 'application/x-www-form-urlencoded'

},

success: function(e){

console.log(e)

}

});

9.小程序无法加载html标签,同时数据渲染也无法渲染wxml标签(等),可以使用wxParse.js来处理相关数据。

10.安卓无法渲染wx.request()请求的数据。

检测返回的数据是否有BOM头(3个字符的空白)。安卓的wx.request解析不会跳过BOM头,导致数据返回的是字符串,而不是对象或者数组。

例:

返回的数据是:(3个字符的空白){a:1, b:2}

解析的数据是:'{a:1, b:2}'(字符串),而不是{a:1, b:2}(对象)

由于不是对象,模板渲染之类会无法正常进行。解决方法,后台返回数据前去掉BOM头就行。如果后台不会去BOM头,可以在前端去除,但是wx.request如果dataType缺省,会默认为json并自动解析,导致无法去除BOM头。

解决方案:wx.request({

url: url,

method: 'GET',

dataType: 'txt',

success: function(e){

let json = e.data.trim();

let arr = JSON.parse(json);

}

});

dataType改为json以外的格式,避免小程序自动解析json字符串,然后对返回的数据用 trim() 方法去掉空白,最后解析json字符串就行。

11.调试时多行省略(-webkit-line-clamp)正常,发布时多行省略无效。

解决方案:如果不想重新审核,让后台截断就好

12.单次setData长度有限制:1048576

appservice:16 invokeWebviewMethod 数据传输长度为 2432088 已经超过最大长度 1048576

在用富文本的时候容易发生,特别是图片为base64且像素特别大的时候

以上就是本篇文章的所有内容,大家要是还不太了解的话,可以自己多实现两边就很容易掌握了哦!

相关推荐:

微信开发Token验证失败解决方法

苹果手机 微信PHP问题,微信开发常见的问题总结相关推荐

  1. 微信开放平台开发常见错误(长期更新)

    微信开放平台开发常见错误 在开发微信第三方平台的时候,会常见一下错误码 42001: 获取access token超时,一般都是第三方平台的access Token失效导致的 47001: data ...

  2. 微信公众号报修系统常见通用功能开发

    微信公众号报修系统常见通用功能开发 51报修系统是一款基于微信的用户报修.维修师傅接单.公司进行管理的一站式维修服务平台,实现报修.派单.接单.支付.评价.回访等功能.涵盖了各类生活维修服务,包括水电 ...

  3. 微信小程序开发常见问题解答

    人在国外可以开发小程序吗? 有很多人在问,人在国外能不能开发一个微信小程序?答案是可以的. 但是在国外开发小程序都话,需要注意以下几点: 1.微信小程序是针对的本地华人,支付也是用人民币,那字体也设计 ...

  4. 微信公众帐号开发教程第1篇-引言(转)

    接触微信公众帐号已经有两个多月的时间了,在这期间,除了陆续完好个人公众帐号xiaoqrobot以外,还带领团队为公司开发了两个企业应用:一个是普通类型的公众帐号,还有一个是会议类型的公众帐号.经过这3 ...

  5. ebs开发入门 oracle 知乎_微信小程序云开发入门第一篇---开发准备事项

    在开始本文的正式内容之前,先允许我做一个简单的自我介绍,我是一名嵌入式软件开发人员,目前在一家音视频处理芯片公司做linux系统下音视频开发的相关工作,算是嵌入式软件开发行业的老人了,如果您对嵌入式行 ...

  6. 淘宝客微信机器人接口API开发

    淘宝客微信机器人API接口,淘客机器人API,微信机器人API 微信二次开发完整API功能 需要文档的自取wkteam.gitbook.io 今天给大家介绍微信个人号自动回复机器人的二次开发!使用微信 ...

  7. 视频教程-微信公众平台深度开发v2.0第3季——二维码、模板消息-微信开发

    微信公众平台深度开发v2.0第3季--二维码.模板消息 微信企业号星级会员.10多年软件从业经历,国家级软件项目负责人,主要从事软件研发.软件企业员工技能培训.已经取得计算机技术与软件资格考试(软考) ...

  8. 微信小程序云开发实战:网上商城(二)

    微信小程序云开发实战:网上商城(二) 主页面 入口页面 云函数与云数据库 代码实现 云端实现 小程序端实现 选择UI组件库 WeUI Vant 整合UI组件库 以扩展包的方式引入weui 接下来 主页 ...

  9. 微信小程序怎么开发自己的小程序?

    现在很多人都想要开发自己的微信小程序,却不知道通过什么方式进行开发,那么关于微信小程序怎么开发自己的小程序,下面给大家讲解一下. 微信小程序怎么开发自己的小程序有哪些方式?可大致分为: 1.自己开发, ...

最新文章

  1. RHEL6.3安装vsftpd
  2. Multiple Object Tracking:多目标跟踪综述
  3. MyBatis逆向工程:根据table生成Model、Mapper、Mapper.xml
  4. 聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut .
  5. html语言右对齐,在HTML中右对齐块元素
  6. 通报批评!国家基金委公布2021年查处的不端行为案件处理决定(第二批次)
  7. C++类模板5分钟入门
  8. shishuo-CMS-master
  9. K8S_Google工作笔记0011---通过二进制方式_为APIServer生成自签证书
  10. python开发环境规范——pycharm
  11. ntko 发生错误:保存html到临时文件目录发生错误,ntko学习文档..doc
  12. win7映射网络驱动器消失了_win7系统映射网络驱动器出现问题的解决方法
  13. SWOT模板与方法论
  14. java基础简答题1
  15. onkeyup事件只能输入数字,字母,下划线等
  16. via浏览器下载路径_via浏览器
  17. validate.js 插件表单校验
  18. Springboot 整合 Current-Limiting 实现接口限流
  19. 激光切割过程中遇到毛边怎么办?
  20. matlab取色工具getpts

热门文章

  1. o2o系统功能有哪些亮点?
  2. DV通配符证书申请方式及特点
  3. 区块链/solidity-address payable和address
  4. 社会网络中新事物的传播
  5. 认识消防报警联网中CAN光纤转换器的光纤接口和配套光纤线缆
  6. 社招进京东真的很难吗?小伙毕业2年有幸获得京东内推,3面技术官直接拿下offer!
  7. bash shock vulnerable
  8. 寿光一中2021年高考成绩查询,2017年寿光高考成绩公布,捷报频传,喜获丰收!...
  9. python如何换行
  10. 运营商大数据手机号抓取的功能有哪些