1.如何实现下拉刷新
- 首先在app.json或者页面的json中配置enablePullDownRefresh为true
- 在 Page中使用onPullDownRefresh 函数,该函数在下拉刷新时执行
- 在下拉函数执行时发起数据请求,请求返回后,调用 wx.stopPullDownRefresh 停止下拉刷新的状态
2.怎么解决小程序的异步请求问题
- 不封装接口的话可以在返回成功的回调里面处理逻辑
- 可以用Promise 来封装
- 可以引用runtime来使用async await
- 使用wepy或着美团的小程序框架,可以通过安装库解决
3.封装微信小程序的数据请求的
将所有的接口放在统一的js文件中并导出
在app.js中创建封装请求数据的方法
在子页面中调用封装的方法请求数据
4.bindtap和catchtap的区别是什么
- bindtap是不会阻止冒泡事件的,catchtap是阻值冒泡的
5.跳转页面
- wx.navigateTo():保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面(参数必须为字符串)
- wx.redirectTo():关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面
- wx.switchTab():跳转到 abBar 页面,并关闭其他所有非 tabBar 页面
- wx.navigateBack()关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层
- wx.reLaunch():关闭所有页面,打开到应用内的某个页面
- 通过navigator跳转
6.小程序跳转tab需要注意哪些?
答:必须用wx.switchTab(Object object),需要跳转的页面必须是在app.json中的tabBar注册过的,并且路径后不能带参数
7.小程序如何实现跨页面跳转
//这个步骤有点长,先挖个坑,以后有时间填
8.wxml传值
- 添加data-属性来传递我们需要的值,然后通过e.currentTarget.dataset获取
- 需要注意:命名如果有大写,如:data-ID,在获取的时候都是小写,即:ev.currentTarget.dataset.id
9.app.onLaunch的异步解决
//回调
//还有别的方法 以后再写 感觉能写一篇
10.setData的回调函数
答:微信小程序的setData实现是和react的setData实现类似的,所以它也是一个异步函数,并且有回调函数的参数,当然平时小量数据我们可能并没有感觉到它的异步,但是为了确保逻辑的正确执行,在需要用到setData后 data里的数据的步骤,请写入setData的回调函数中,如下示例:
this.setData({
a: this.data.a++
},()=>{
})