首页 > 技术文章 > 微信小程序-常用api

fm060 2019-06-13 10:24 原文

1.路由5种跳转方式
(1)wx.switchTab :只能跳转到导航页,并关闭其他的导航页
(1)wx.reLaunch :关闭所有页面,打开到应用内的某个页面
(1)wx.redirectTo :关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 导航 页面
(1)wx.navigateTo :只保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面(最多10层)
(1)wx.navigateBack :返回上一页,可以返回多级页面
 
wx.navigateTo({
    url: 'test?id=1'
})

wx.navigateBack({
    delta: 2
})

 

2.弹窗提示
(标签)
wx.showToast({
  title: '功能暂未开放!',
  icon: 'none', success
  duration: 2000
})
(选择窗)
wx.showModal({
  title: '提示',
  content: '这是一个模态弹窗',
  success (res) {
    if (res.confirm) {
      console.log('用户点击确定')
    } else if (res.cancel) {
      console.log('用户点击取消')
    }
  }
})
(加载中)
wx.showLoading({
  title: '加载中',
})

setTimeout(function () {
  wx.hideLoading()
}, 2000)

  

3.分享

onLoad: function (options) {
  this.getDate(options.id)
  wx.showShareMenu({
    // 要求小程序返回分享目标信息
    withShareTicket: true
  })
},
/* 转发*/
onShareAppMessage: function (ops) {
  if (ops.from === 'button') {
    // 来自页面内转发按钮
    console.log(ops.target)
  }
  return {
    title: '转发dom',
    path: `pages/index/index`,
    success: function (res) {
      // 转发成功
      console.log("转发成功:" + JSON.stringify(res));
      var shareTickets = res.shareTickets;
    },
    fail: function (res) {
      // 转发失败
      console.log("转发失败:" + JSON.stringify(res));
    }
  }
}

  

4.生成canvas图片

var that = this;
    var unit = that.data.screenWidth / 375
    //2. canvas绘制文字和图片
    const ctx = wx.createCanvasContext('share');
    var bgImgPath = that.data.shareImgSrc;

    ctx.drawImage(bgImgPath, 0, 0, 375, 375); //导入图片
    ctx.setFontSize(20)
    ctx.setFillStyle('#000')
    ctx.fillText('生成文字在图片上', 20, 110)

    ctx.stroke()
    ctx.draw(false, function () {
      // 3. canvas画布转成图片
      wx.canvasToTempFilePath({
        x: 0,
        y: 0,
        width: 375,
        height: 375,
        destWidth: 375,
        destHeight: 375,
        canvasId: 'share',
        success: function (res) {
          console.log(res);
          that.setData({
            shareImgSrc: res.tempFilePath
          })
          if (!res.tempFilePath) {
            wx.showModal({
              title: '提示',
              content: '图片绘制中,请稍后重试',
              showCancel: false
            })
          }
          
        },
        fail: function (res) {
          console.log(res)
        }
      })
    });

  

5.保存图片到相册

click: function () {
    let that = this
    wx.saveImageToPhotosAlbum({
      filePath: that.data.shareImgSrc,
      success(res) {
        wx.showModal({
          title: '图片保存成功',
          content: '图片成功保存到相册了,去发圈噻~',
          showCancel: false,
          confirmText: '好哒',
          confirmColor: '#72B9C3',
          success: function (res) {
            if (res.confirm) {
              console.log('用户点击确定');
            }
            that.setData({
              canvasHidden: true
            })
          }
        })
      }
    })
  }

  

6.数据缓存

  wx.setStorageSync('key', 'value')
  wx.getStorageSync('key')

  

7.返回上一页,刷新页面

onShow(){
  this.onLoad()
}

  

推荐阅读