微信小程序 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 相关文章推荐
jquery 问答知识整理
Feb 11 Javascript
JavaScript中获取样式的原生方法小结
Oct 08 Javascript
vue实现ajax滚动下拉加载,同时具有loading效果(推荐)
Jan 11 Javascript
JS中传递参数的几种不同方法比较
Jan 20 Javascript
学习使用Bootstrap页面排版样式
May 11 Javascript
详解js几个绕不开的事件兼容写法
Aug 30 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 jQuery
详解Vue2 添加对scss的支持
Jan 02 Javascript
vue-cli webpack配置文件分析
May 20 Javascript
中高级前端必须了解的JS中的内存管理(推荐)
Jul 04 Javascript
VUE : vue-cli中去掉路由中的井号#操作
Sep 04 Javascript
Vue实现tab导航栏并支持左右滑动功能
Jun 28 Vue.js
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
九个你必须知道而且又很好用的php函数和特点
2013/08/08 PHP
试用php中oci8扩展
2015/06/18 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
面向对象的Javascript之二(接口实现介绍)
2012/01/27 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
javascript获取函数名称、函数参数、对象属性名称的代码实例
2014/04/12 Javascript
js实现特定位取反原理及示例
2014/06/30 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
Javascript闭包用法实例分析
2015/01/23 Javascript
Javascript实现的简单右键菜单类
2015/09/23 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
JS把内容动态插入到DIV的实现方法
2016/07/19 Javascript
Vue实现双向绑定的方法
2016/12/22 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
微信小程序用户拒绝授权的处理方法详解
2019/09/20 Javascript
javascript实现异形滚动轮播
2019/11/28 Javascript
[02:35]DOTA2英雄基础教程 末日使者
2013/12/04 DOTA
Python文件夹与文件的操作实现代码
2014/07/13 Python
浅析Python多线程下的变量问题
2015/04/28 Python
Python守护进程用法实例分析
2015/06/04 Python
利用python实现对web服务器的目录探测的方法
2019/02/26 Python
python图片剪裁代码(图片按四个点坐标剪裁)
2020/03/10 Python
如何让python的运行速度得到提升
2020/07/08 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
让ie浏览器成为支持html5的浏览器的解决方法(使用html5shiv)
2014/04/08 HTML / CSS
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
俄罗斯电动工具和设备购物网站:Vseinstrumenti.ru
2020/11/12 全球购物
门卫岗位安全职责
2013/12/13 职场文书
民事授权委托书范文
2014/08/02 职场文书
2014年手术室工作总结
2014/11/26 职场文书
护士求职自荐信范文
2015/03/04 职场文书
青年干部培训班学习心得体会
2016/01/06 职场文书
CSS3 制作的悬停缩放特效
2021/04/13 HTML / CSS
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python
Java 常见的限流算法详细分析并实现
2022/04/07 Java/Android