微信小程序跳转公众号

发布时间:2023-05-19

一、跳转公众号的基本流程

在微信小程序中跳转到公众号,需要使用微信提供的API:wx.navigateToMiniProgram。具体的流程如下:

  1. 首先需要在小程序中获取到公众号的AppID。
wx.request({
  url: 'https://api.weixin.qq.com/cgi-bin/account/getaccountbasicinfo',
  data: {
    access_token: 'ACCESS_TOKEN'
  },
  success: function(res) {
    console.log(res.data.appid)
  }
})
  1. 然后调用 wx.navigateToMiniProgram 跳转到公众号。
wx.navigateToMiniProgram({
  appId: '公众号的AppID',
  path: 'pages/index/index',
  extraData: {
    foo: 'bar'
  },
  envVersion: 'release',
  success(res) {
    // 打开成功
  }
})

其中,extraData 是传递给目标小程序的数据,可以在目标小程序中通过 wx.getLaunchOptionsSync 获取。envVersion 是要跳转到的公众号版本,有 develop(开发版)、trial(体验版)、release(线上版)三个枚举值。

二、公众号页面内跳转

在公众号页面中,如果需要跳转到小程序,需要使用微信提供的JSAPI:wx.miniProgram.navigateTo

  1. 首先需要在公众号页面中引入JS文件。
<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
  1. 然后在公众号页面中调用 wx.miniProgram.navigateTo 跳转到小程序。
wx.miniProgram.navigateTo({
  url: '/pages/index/index',
  success: function() {
    console.log('跳转成功')
  }
})

其中,url 是要跳转到的小程序页面路径。

三、小程序和公众号的数据传递

在小程序和公众号之间进行数据传递,可以使用 extraData 参数。 在小程序中,通过 wx.navigateToMiniProgram 跳转到公众号,可以在 extraData 中传递数据。

wx.navigateToMiniProgram({
  appId: '公众号的AppID',
  path: 'pages/index/index',
  extraData: {
    key: 'value'
  }
})

在公众号中,可以通过 wx.getLaunchOptionsSync 获取到从小程序传递过来的数据。

var options = wx.getLaunchOptionsSync();
var extraData = options.extraData;
console.log(extraData.key);

四、小结

微信小程序跳转公众号是实现两个平台间交互的重要方式之一。本文介绍了跳转公众号的基本流程、公众号页面内跳转、小程序和公众号的数据传递等内容,希望能够对开发者有所帮助。