重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

总结小程序开发中遇到的问题

时间:2020-09-17 15:20:08 作者:重庆seo小潘 来源:
问题总结:(1) 分隔线高度使用rpx问题在相邻的两条信息直接都会有一个分割线,将线的高度都设置成1rpx,在第一条和第二条之前的分隔线没有显示,但是其他的都展示了,分割线的属性是一样的,而且在不同的手机上(分辨率不同)不显示的分割线也是不同的,有的

问题总结:(1) 分隔线高度使用rpx问题在相邻的两条信息直接都会有一个分割线,将线的高度都设置成1rpx,在第一条和第二条之前的分隔线没有显示,但是其他的都展示了,分割线的属性是一样的,而且在不同的手机上(分辨率不同)不显示的分割线也是不同的,有的分辨率好几条分割线都不显示,不知道这是模拟器的bug还是rpx的bug。解决方法:分割线的高度尺寸单位使用了px,解决了这个问题。

(2) Page注册问题这个错误可能很容易理解,页面注册错误。页面是通过Page对象来渲染的,每个页面对应的js文件必须要创建page,最简单的方式就是在js文件下写入Page({}),在page中有管理页面渲染的生命周期,以及数据处理,事件都在这完成。这个错误引起的原因一般都是刚创建页面,js文件还有有处理或者忘了处理。解决方法:养成创建页面的同时在js文件先创建Page的习惯.

(3) Page route 错误重复调用路由引起的,处理方法就是删除一个路由,删除<navigator />组件或者删除wx.navigateTo。

(4) Don’t have * Handle in current page.其实这种问题出现一般就是我们在wxml定义了一些处理事件,但是在js文件中没有实现这个时事件的处理方法,就会出现这个错误。那么我们按提示在js文件加上事件处理解决方法:不要漏掉任何调用事件的方法实现

(5) tabBar 设置不显示对于tabBar不显示,原因有很多,查找这个错误直接去app.json这个文件

未将页面注册到app.json中

tabBar写法错误导致的不显示,将其中的大写字母B写成小写,导致tabBar不显示

tabBar的list中没有写pagePath字段,或者pagePath中的页面没有注册

tabBar的list的pagePath指定的页面没有写在注册页面第一个。微信小程序的逻辑是”pages”中的第一个页面是首页,也就是程序启动后第一个显示的页面,如果tabBar的list的pagePath指定的页面都不是pages的第一个,当然也就不会显示tabBar了。

tabBar的数量低于两项或者高于五项,微信官方中明确规定tabBar的至少两项最多五项。超过或者少于都不会显示tabBar。

(6) wx.navigateTo 无法打开页面一个应用同时只能打开5个页面,当已经打开了5个页面之后,wx.navigateTo不能正常打开新页面。请避免多层级的交互方式,或者使用wx.redirectTo

(7) 本地资源无法通过css获取background-image:可以使用网络图片,或者 base64,或者使用<image/>标签

(8) 页面数据传递微信小程序路由(页面跳转)是通过API wx.navigateTo或者wxml中<navigator/>组件实现的,不管哪种实现都会有一个重要的参数就是url,它指定了要跳转的页面,并且页面之间数据传递也是通过url来实现的,这个数据传递有点类似于我们使用的get网络请求,把参数都拼接在要跳转界面地址的后面并以“?”连接。然后将要传入的数据以键和值的形式追加在”?”后面,多个参数直接用”&”符合。可以这样写<navigator url="/pages/dynamic/dynamic?title={{item.title}}&message={{item.message}}"><view>而数据接收是在js文件的page里接收的,page生命周期有一个onLoad函数,它就是做一些初始化数据的工作,onLoad函数有一个参数options,我们就可以通过key将数据获取,如下onLoad:function(options){// 页面初始化 options为页面跳转所带来的参数console.log(options.title) //这里是接收参数console.log(options.message)},这样就实现了页面间数据传递功能。以上就是总结小程序开发中遇到的问题的详细内容,更多请关注小潘博客其它相关文章!