微信小程序 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 14 Javascript
js禁止页面使用右键(简单示例代码)
Nov 13 Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 Javascript
jquery实现无限分级横向导航菜单的方法
Mar 12 Javascript
php结合imgareaselect实现图片裁剪
Jul 05 Javascript
Jquery Mobile 自定义按钮图标
Nov 18 Javascript
Bootstrap精简教程
Nov 27 Javascript
JavaScript判断数组是否存在key的简单实例
Aug 03 Javascript
Bootstrap入门教程一Hello Bootstrap初识
Mar 02 Javascript
微信小程序如何获取地址
Dec 24 Javascript
js实现select下拉框选择
Jan 11 Javascript
JavaScript最完整的深浅拷贝实现方式详解
Feb 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
php Smarty 字符比较代码
2011/02/27 PHP
PHP文件缓存类实现代码
2015/10/26 PHP
PHP中Array相关函数简介
2016/07/03 PHP
Yii2主题(Theme)用法详解
2016/07/23 PHP
Laravel框架FormRequest中重写错误处理的方法
2019/02/18 PHP
基于prototype扩展的JavaScript常用函数库
2010/11/30 Javascript
jQuery(js)获取文字宽度(显示长度)示例代码
2013/12/31 Javascript
Node.js 制作实时多人游戏框架
2015/01/08 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
2017/07/06 Javascript
搭建vue开发环境
2018/07/19 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
微信小程序如何获取手机验证码
2018/11/04 Javascript
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
Python代码解决RenderView窗口not found问题
2016/08/28 Python
Python安装官方whl包和tar.gz包的方法(推荐)
2017/06/04 Python
python实现xlsx文件分析详解
2018/01/02 Python
python MysqlDb模块安装及其使用详解
2018/02/23 Python
Python实现自定义顺序、排列写入数据到Excel的方法
2018/04/23 Python
使用selenium模拟登录解决滑块验证问题的实现
2019/05/10 Python
python2.7的flask框架之引用js&css等静态文件的实现方法
2019/08/22 Python
Django连接数据库并实现读写分离过程解析
2019/11/13 Python
使用pyshp包进行shapefile文件修改的例子
2019/12/06 Python
python利用百度云接口实现车牌识别的示例
2020/02/21 Python
python3实现飞机大战
2020/11/29 Python
HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
2016/12/30 HTML / CSS
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
大学生应聘自荐信
2013/10/11 职场文书
建筑自我鉴定
2013/10/19 职场文书
单位法人授权委托书范本
2014/10/09 职场文书
内勤岗位职责
2015/02/10 职场文书
技术负责人岗位职责
2015/02/10 职场文书
Java基础——Map集合
2022/04/01 Java/Android
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL
CentOS7设置ssh服务以及端口修改方式
2022/12/24 Servers