微信小程序的转发分享功能

这篇具有很好参考价值的文章主要介绍了微信小程序的转发分享功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序的转发分享功能,有两种实现方式:

  1. button组件open-type="share",点击按钮后,会触发Page.onShareAppMessage事件。
  2. 页面右上角菜单“转发”按钮,点击按钮后,也会触发Page.onShareAppMessage事件。

button组件的open-type=“share”

代码涉及的文件有:

  1. app.json
  2. pages/about/about.wxml
  3. pages/about/about.wxss
  4. pages/about/about.js

微信小程序的转发分享功能
button组件open-type="share",点击该按钮,触发Page.onShareAppMessage事件。

app.json

{
  "pages": [
    "pages/about/about"
  ],
  "window": {
    "navigationBarBackgroundColor": "#0149af",
    "navigationBarTitleText": "首页",
    "navigationBarTextStyle": "white"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

pages/about/about.wxml

<view class="aboutContainer">
  <view class="content">极客是一群什么样的人?他们大智若愚而富有科学精神,对一切常识的东西天然反感;他们天生热爱探索和创造,对于跟随和人云亦云深恶痛绝;他们特立独行,从不自我设置禁区;他们信仰自由,对于人为的限制极其不屑并热衷于挑战权威;在工作中他们推崇化繁为简,相信设计的力量并追求产品美学……</view>
  <button open-type="share">点我分享</button>
</view>

pages/about/about.wxss

.content{
  margin: 10rpx;
  padding: 10rpx;
  text-align: justify;
  line-height: 40rpx;
  background:#eee;
  color: #1a74f1;
  font-size: 24rpx;
  border-radius: 10rpx;
  margin-bottom: 10rpx;
}

pages/about/about.js

Page({})

页面右上角的转发按钮

首先,只有定义了 onShareAppMessage(),页面右上角菜单才会显示“转发”按钮。
微信小程序的转发分享功能

然后,onShareAppMessage(Object object) 接收一个对象作为参数,该对象包含如下属性:

  • from,转发事件来源,string类型,有如下两个值:
    • "button",通过点击页面内的button组件转发。
    • "menu",通过点击页面右上角转发菜单转发。
  • target,是一个对象。
    • 如果from"button",则target是触发此次转发事件的button组件。
    • 如果from"menu",则targetundefined

最后,onShareAppMessage(Object object) 可以返回一个对象,用来自定义转发内容。返回的对象可以包含如下属性:

  • title,转发标题,默认是当前小程序的名称。
  • path,转发路径,必须是以/开头的完整路径,默认是当前页面的path。
  • imageUrl,自定义图片路径,可以是本地图片,也可以网络图片,默认是当前页面的快照截图。

代码涉及的主要文件有:

  1. app.json
  2. pages/about/about.wxml
  3. pages/about/about.wxss
  4. pages/about/about.js
  5. pages/home/home.wxml
  6. pages/home/home.wxss
  7. pages/home/home.js

微信小程序的转发分享功能文章来源地址https://www.toymoban.com/news/detail-483383.html

app.json

{
  "pages": [
    "pages/about/about",
    "pages/home/home"
  ],
  "window": {
    "navigationBarBackgroundColor": "#0149af",
    "navigationBarTitleText": "首页",
    "navigationBarTextStyle": "white"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

pages/about/about.wxml

<view class="aboutContainer">
  <view class="content">极客是一群什么样的人?他们大智若愚而富有科学精神,对一切常识的东西天然反感;他们天生热爱探索和创造,对于跟随和人云亦云深恶痛绝;他们特立独行,从不自我设置禁区;他们信仰自由,对于人为的限制极其不屑并热衷于挑战权威;在工作中他们推崇化繁为简,相信设计的力量并追求产品美学……</view>
  <button open-type="share" id="share-btn">点我分享</button>
</view>

pages/about/about.wxss

.content{
  margin: 10rpx;
  padding: 10rpx;
  text-align: justify;
  line-height: 40rpx;
  background:#eee;
  color: #1a74f1;
  font-size: 24rpx;
  border-radius: 10rpx;
  margin-bottom: 10rpx;
}

pages/about/about.js

Page({
  onShareAppMessage({from,target}){
    console.log(from,target);
    let myObj = {
      title:`来自${from}的转发,AITO邀您试驾`,
      path:"/pages/home/home",
      imageUrl:"/static/images/car.jpg"
    }
    return myObj;
  }
})

pages/home/home.wxml

<view class="homeContainer">
  <view class="content" wx:for="{{contentList}}" wx:key="{{index}}">{{item}}</view>
</view>

pages/home/home.wxss

.homeContainer{
  padding: 20rpx;
}
.content{
  width: 100%;
  height: 600rpx;
  line-height: 600rpx;
  text-align: center;
  background:#eee;
  color: #1a74f1;
  font-size: 64rpx;
  border-radius: 10rpx;
  margin-bottom: 10rpx;
}

pages/home/home.js

Page({
  data:{
    contentList:[]
  },
  onLoad(){
    const contentList = this.getDataFromServer();
    this.setData({contentList});
  },
  getDataFromServer(){
    let result = ["肯德基宅急送","云海肴","西贝莜面村","眉州东坡","华莱士"];
    return result;
  }, 
  onReachBottom(){
    console.log("on reach bottom");
    console.log("上拉触底,获取数据追加列至列表中");
    const appendData = ["其他","其他","其他","其他","其他"];
    const newContentList = [...this.data.contentList,...appendData];
    this.setData({contentList:newContentList});
  },
  onPullDownRefresh(){
    console.log("on pull down refresh");
    console.log("下拉刷新,获取最新列表数据");
    this.getDataFromServer();
  }
})

到了这里,关于微信小程序的转发分享功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 微信小程序全局分享转发实现-无需页面单独设置

    微信小程序没有自带全局分享设置,页面开启分享功能必须要在页面中定义分享事件函数onShareAppMessage(分享给朋友)和onShareTimeline(分享至朋友圈)。如果项目中页面比较多,一个个去设置无疑是非常麻烦的,因此全局设置就非常有必要了。 此时我们将代码放在app.js中,注

    2024年02月16日
    浏览(13)
  • uniapp(HBuilder X)实现微信小程序转发好友和分享朋友圈(携带多个参数)

    uniapp(HBuilder X)实现微信小程序转发好友和分享朋友圈(携带多个参数)

    1.转发好友 2.分享朋友圈 需要注意的一些地方: 分享和转发内部不得有嵌套方法返回,也就是不可异步,否则在执行的时候,只会执行当前页面,自定义标题等都不会生效 转发代码块的存放级别与生命周期同级,分享代码块需要放进方法中(methods),不然不会生效 分享的参数携

    2024年02月16日
    浏览(46)
  • 微信小程序 - 详细动态设置分享转发时的参数,实现点击按钮元素后 “手动触发“ 动态设置参数并调起转发分享给好友(列表上每一个分享按钮,单独设置分享转发参数,每次都是不同的分享参数)

    微信小程序 - 详细动态设置分享转发时的参数,实现点击按钮元素后 “手动触发“ 动态设置参数并调起转发分享给好友(列表上每一个分享按钮,单独设置分享转发参数,每次都是不同的分享参数)

    网上都是直接写死(默认不变)的分享参数,有时候需要动态赋值分享的标题、图片等,本文,这时候就不行了。 【如果需要 uniapp 微信小程序的教程,请访问:这篇文章】 本文 实现了在微信小程序项目开发中,动态设置分享的参数(并与右上角胶囊点击的分享共存,互不

    2024年02月14日
    浏览(54)
  • uniapp - [微信小程序] 详细动态设置分享转发时的参数,实现点击按钮元素后 “手动触发“ 动态设置参数并调起转发分享给好友(列表上每一个分享按钮,单独设置分享转发参数,每次都是不同的分享参数)

    uniapp - [微信小程序] 详细动态设置分享转发时的参数,实现点击按钮元素后 “手动触发“ 动态设置参数并调起转发分享给好友(列表上每一个分享按钮,单独设置分享转发参数,每次都是不同的分享参数)

    网上都是直接写死(默认不变)的分享参数,有时候需要动态赋值分享的标题、图片等,本文,这时候就不行了。 【如果需要原生微信小程序的教程,请访问:这篇文章】 本文 实现了在 uniapp 微信小程序端开发中,动态设置分享的参数(并与右上角胶囊点击的分享共存,互

    2024年02月14日
    浏览(116)
  • uniapp 微信小程序分享、分享朋友圈功能

    uniapp 微信小程序分享、分享朋友圈功能

    页内自定义分享按钮 当页面js上没有添加事件“onShareAppMessage”,右上角‘…’不会出现“转发”事件。 如果有事件,但是没有定义事件内容的话,转发的卡片则是当前页面的截屏信息。 官方文档:https://uniapp.dcloud.io/api/plugins/share?id=onshareappmessage 方式1:小程序右上角原生菜

    2024年02月16日
    浏览(49)
  • uniapp微信小程序使用分享功能

    uniapp微信小程序使用分享功能

    实现效果为如下所示的小程序分享功能: 本项目是一个使用uniapp搭建的微信小程序,上线后点击右上角的…,发现其中的发送给朋友和分享到朋友圈是如下图所示的灰色不能点击: 那么,如何设置微信小程序的分享功能呢? 第一步:在onLoad方法中写wx.showShareMenu方法,设置

    2024年02月11日
    浏览(53)
  • UNIAPP 微信小程序实现分享功能

    UNIAPP 微信小程序实现分享功能

    默认情况下点击微信小程序调试器无法实现分享功能,如下图  此时需要设置如下操作,个人默认习惯是在 utils文件下 创建 share.js 文件 并写入代码 内容如下 然后打开main.js 修改如下 设置完成后再点击右上角的分享就打开了 回到组件内 如果需要通过按钮实现分享功能  参考

    2024年02月04日
    浏览(49)
  • 微信小程序开启分享给好友及分享朋友圈功能

    微信小程序开启分享给好友及分享朋友圈功能

    创建一个空白模板的微信小程序,发布成功后才发现不能分享给好友 及朋友圈 查了下才知道,要有分享功能需要开启。 在小程序首页的里添加以下两个函数  分享好友 和朋友圈里设置要显示 的标题的图片底图。  return {       title:\\\'分享时标题\\\',       query:{        

    2024年02月12日
    浏览(48)
  • 微信小程序点击icon实现分享功能

    微信小程序点击icon实现分享功能

    1.小程序分享功能实现方式 小程序分享功能有两种方式,监听用户点击页面内转发按钮( 组件 open-type=“share”)或右上角菜单“转发”按钮的行为,并自定义转发内容。 使用微信小程序的分享功能需要定义onShareAppMessage(Object object)函数,存在该函数分享功能才能被触发 官网

    2024年02月10日
    浏览(48)
  • 微信小程序onShareTimeLine分享朋友圈功能

    微信小程序onShareTimeLine分享朋友圈功能

    微信为了更好的用户体验在2.11.3版本当中新出了一个onShareTimeLine方法跟onShareAppMessage类似的方法用于分享朋友圈,在onShareTimeLine当中的参数有title、query、imageUrl三个参数,其中title是标题,query是路径可携带参数,imageUrl是自定义的图片比例为1:1,只支持png和jpg格式的图片,默

    2024年02月16日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包