微信小程序 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 相关文章推荐
更正确的asp冒泡排序
May 24 Javascript
一个简单的JavaScript 日期计算算法
Sep 11 Javascript
js根据日期判断星座的示例代码
Jan 23 Javascript
jquery中实现时间戳与日期相互转换
Apr 12 Javascript
基于jquery实现轮播特效
Apr 22 Javascript
全面解析Bootstrap中transition、affix的使用方法
May 30 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
Jun 29 Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
Aug 24 Javascript
Vue.js原理分析之observer模块详解
Feb 17 Javascript
jquery之基本选择器practice(实例讲解)
Sep 30 jQuery
使用gulp构建前端自动化的方法示例
Dec 25 Javascript
如何HttpServletRequest文件对象并储存
Aug 14 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开发规范手册之PHP代码规范详解
2011/01/13 PHP
php 广告调用类代码(支持Flash调用)
2011/08/11 PHP
PHP的swoole扩展安装方法详细教程
2016/05/18 PHP
YII2 实现多语言配置的方法分享
2017/01/11 PHP
PHP简单实现欧拉函数Euler功能示例
2017/11/06 PHP
PHP递归的三种常用方式
2019/02/28 PHP
统一接口:为FireFox添加IE的方法和属性的js代码
2007/03/25 Javascript
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
javascript中传统事件与现代事件
2015/06/23 Javascript
使用jquery动态加载Js文件和Css文件
2015/10/24 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
JS组件Bootstrap实现弹出框效果代码
2016/04/26 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
Nodejs高扩展性的模板引擎 functmpl简介
2017/02/13 NodeJs
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
vue中keep-alive的用法及问题描述
2018/05/15 Javascript
electron实现静默打印的示例代码
2019/08/12 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
微信小程序 bindtap 传参的实例代码
2020/02/21 Javascript
使用Mixin设计模式进行Python编程的方法讲解
2016/06/21 Python
python数字图像处理之骨架提取与分水岭算法
2018/04/27 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
django的ORM操作 删除和编辑实现详解
2019/07/24 Python
python中用logging实现日志滚动和过期日志删除功能
2019/08/20 Python
Python GUI库PyQt5图形和特效样式QSS介绍
2020/02/25 Python
Matlab中plot基本用法的具体使用
2020/07/17 Python
运行Python编写的程序方法实例
2020/10/21 Python
HTML5移动端开发中的Viewport标签及相关CSS用法解析
2016/04/15 HTML / CSS
以思科路由器为例你写下单臂路由的配置命令
2013/08/03 面试题
高三自我鉴定范文
2013/10/19 职场文书
化工专业推荐信范文
2013/11/28 职场文书
成龙霸王洗发水广告词
2014/03/14 职场文书
党员个人总结范文
2015/02/14 职场文书
pytorch交叉熵损失函数的weight参数的使用
2021/05/24 Python