微信小程序 122100版本更新问题解决方案


Posted in Javascript onDecember 22, 2016

微信小程序版本更新问题

昨天朋友跑过来说微信更新了6.3.2版本,真机运行小程序有不少的问题。主要集中在wx.redirectTo方法无法正常跳转,且没有任何错误提示。但模拟器上是没有任何问题的。
我当时就很“紧张”。小程序又要搞事儿了!

果然今天下午,官方更新了122100版本,一共有90几处改动。这里先不一一列举了。放在另外的文章里。这里主要指出本次更新后对我们项目的影响。

一, redirectTo和navigateTo不能再跳转到带有tab选项卡的页面

首先是welcome欢迎页面无法跳转到文章页面的问题。这是因为小程序新增了一个接口wx.switchTab。这个接口是专门用来跳转到带有tabbar的页面。

但我不理解的是,你新增接口为什么要更改以前的接口。以前用redirectTo和navigateTo都是可以跳转到带有tabbar的页面。但更新后redirectTo和navigateTo均不可以跳转了。而且没有给出明显的错误提示。但如果你有fail方法接收错误消息的话,fail方法的参数里会含有一个错误提示的,非常隐蔽。更改后的代码如下:

代码页:welcome.js

Page({
  onTap: function (event) {    
    wx.switchTab({
      url: "../posts/post"
    });
    
  }
})

请注意switchTab只能跳转到带有tab的页面,不能跳转到不带tab的页面!跳转不带tab的页面还是需要使用redirect或者navigate!所以,如果如果你的post页面还没有加入tab选项卡,请依然使用redirect或者navigate!

二 ,Page的onLoad函数里不可以再直接对data变量赋值做数据绑定

这又是一个很无理的改动,应该是更改了绑定数据的时机。之前版本,在onLoad函数里不需要使用this.setData方法来做数据更新,只需要使用this.data = { key:value} 即可更新数据绑定变量。这样做的方法我在课程里也分析过,是因为onLoad函数执行是在数据绑定初始化之前。

但此次更新后这种方法失效了,造成文章页面无法正常初始化数据。请同学们将所有用this.data做数据绑定的地方,更新成this.setData问题即可解决。举一个代码的例子:

代码页面:post.js

Page({
 data: {
 },
 onLoad: function () {

  // this.data.postList = postsData.postList
  this.setData({
    postList:postsData.postList
   });
 },

三, wx.request 方法的Content-Type参数

这又是很奇葩的一个问题。最早的版本使用content-type:application/json 即可成功访问豆瓣的数据。112301版本更新后,application/json参数不可以使用了。但形如content-type: ‘ ',content-type:xxx,content-type:aaaaaaa 都可以成功调用。

最新的0.11.122100版本 content-type:' ' 形式不可以用了。但其他任意形式都可以用,只要不是空字符串和application/json。

请同学们把相关方法更改成 content-type:json或者content-type:xxxxxx,都可以成功调用豆瓣api。下面是代码示例:

function http(url, callBack) {
 wx.request({
  url: url,
  method: 'GET',
  header: {
   "Content-Type": "json"
  },
  success: function (res) {
   callBack(res.data);
  },
  fail: function (error) {
   console.log(error)
  }
 })
}

3个问题解决后,项目就没问题了。大家以上方法做对照修改。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
javascript dom 基本操作小结
Apr 11 Javascript
浏览器脚本兼容 文本框中,回车键触发事件的兼容
Jun 21 Javascript
qTip2 精致的基于jQuery提示信息插件
Feb 17 Javascript
javascript中indexOf技术详解
May 07 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 Javascript
原生js的数组除重复简单实例
May 24 Javascript
Vue.js实现一个SPA登录页面的过程【推荐】
Apr 29 Javascript
js生成word中图片处理方法
Jan 06 Javascript
Vue封装Swiper实现图片轮播效果
Feb 06 Javascript
Vue中mintui的field实现blur和focus事件的方法
Aug 25 Javascript
微信小程序实现多选功能
Nov 04 Javascript
js实现全选和全不选
Jul 28 Javascript
JS闭包与延迟求值用法示例
Dec 22 #Javascript
jQuery实现两个select控件的互移操作
Dec 22 #Javascript
JS 调用微信扫一扫功能
Dec 22 #Javascript
Vue实现双向绑定的方法
Dec 22 #Javascript
JS实现物体带缓冲的间歇运动效果示例
Dec 22 #Javascript
Vue.js双向绑定实现原理详解
Dec 22 #Javascript
BootStrap Table对前台页面表格的支持实例讲解
Dec 22 #Javascript
You might like
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
PHP上传图片进行等比缩放可增加水印功能
2014/01/13 PHP
ThinkPHP之N方法实例详解
2014/06/20 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
PHP 数组操作详解【遍历、指针、函数等】
2020/05/13 PHP
JQueryEasyUI Layout布局框架的使用
2013/04/08 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
2016/11/25 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
原生js实现瀑布流布局
2017/03/08 Javascript
json的结构与遍历方法实例分析
2017/04/25 Javascript
js实现单张图片平移切换效果
2017/10/11 Javascript
jQuery中图片展示插件highslide.js的简单dom
2018/04/22 jQuery
Vue实现点击时间获取时间段查询功能
2020/08/21 Javascript
JavaScript中创建原子的方法总结
2018/08/26 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
2018/09/10 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
[03:40]DOTA2抗疫特别篇《英雄年代》
2020/02/28 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Python构造函数及解构函数介绍
2015/02/26 Python
Python中的localtime()方法使用详解
2015/05/22 Python
深入理解Python 关于supper 的 用法和原理
2018/02/28 Python
TensorFlow 滑动平均的示例代码
2018/06/19 Python
python中property和setter装饰器用法
2019/12/19 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
2020/02/12 Python
Python利用命名空间解析XML文档
2020/08/10 Python
如何创建一个Flask项目并进行简单配置
2020/11/18 Python
购买英国原创艺术:Art Gallery
2018/08/25 全球购物
大学生应聘推荐信范文
2013/11/19 职场文书
经典商业广告词
2014/03/13 职场文书
2014年最新学校运动会广播稿
2014/09/17 职场文书
个人职业生涯规划之自我评估篇
2019/09/03 职场文书
css中:last-child不生效的解决方法
2022/08/05 HTML / CSS