小程序常见用法

289 阅读1分钟

1.获取当前页面小程序路由和上

// eslint-disable-next-line
let page = getCurrentPages()
let lastPage = page[page.length - 2]
// 获取上一个页面的对象
lastPage.options.xxx 页面参数

2.在多个异步结束后执行某个函数

const fun1 = new Promise(resolve => {
  setTimeout(() => {
    resolve(1)
  }, 1000)
})
const fun2 = new Promise(resolve => {
  setTimeout(() => {
    resolve(2)
  }, 1500)
})
Promise.all([fun1, fun2]).then(res => {
  console.log(res)
})

3.在分享时给给需要分享的页面带上参数

<button open-type="share" :data-cardno="cardNo" :data-vasday="vasDay">赠送</button>
onShareAppMessage (options) {
    const retObj = {
      title: '这是一个分享功能',
      imageUrl: 'https://xxxx/share.png'
    }
    if (options.from === 'button') {
      let edata = options.target.dataset
      retObj.path = `/pages/detail/main?cardNo=${edata.cardno}&vasDay=${edata.vasday}`
    }
    return retObj
},

4.向上滑动加载更多,向下滑动刷新

// 小程序生命周期
// 加载更多
onReachBottom () {
    // 调接口
}
// main.json里加上"enablePullDownRefresh": true,
onPullDownRefresh () {
    // 调接口
}
// 终止刷新
wx.stopPullDownRefresh()

5.子组件的生命周期onLoad有效,而onShow无效果