【微信小程序-分享当前页面功能】

微信小程序-分享

场景

最近做项目,需要在商品详情页面增加一个分享功能。
具体业务场景:商品页面数据需要登录之后才可以查看,在商品详情页面增加一个按钮,点击按钮能够唤起微信好友聊天列表(包括群聊列表),然后选择好友发送。

代码

product.wxml

<view class="share-main" >
        <van-icon name="share-o" color="#FFFFFF" size="30rpx" />
        <button size="mini" plain="true" open-type="share">分享</button>
      </view>

这里还使用了van组件,也可以使用image组件,主要是显示分享图标。不用也可以。

注意:这里只能使用button,因为只有这个组件才会支持分享功能。
在这里插入图片描述

product.scss文件

.share-main{
        display: flex;
        flex-flow: column;
        padding: 15rpx 32rpx 15rpx 0rpx;
      }
      .share-main button{
        border: solid 0rpx #FFFFFF;
        color: #FFFFFF;
        font-size: 24rpx;
      }

.share-main button 是为了修改按钮的样式,因为默认的样式不好看。

product.ts文件

// 判断当前页面是否登录,如果已经登录就加载数据,如果没有登录,返回首页。
onLoad(e: any) {
    console.log('=====', e);
    var vtoken = wx.getStorageSync('Token')
    if(vtoken){
      this.getDetails(e);
    }else{
      wx.switchTab({
        url:"/pages/home/index"
      })
    }
  },

onShareAppMessage(res:any) {
    if (res.from === 'button') {
      // 来自页面内转发按钮
      console.log(res.target)
    }
    // 配置分享的内容
    return {
      title: '分享的标题', // 分享的标题,可以是当前商品名称
      path: '/pages/centre/productDetails/index?pageType=share&code=' + this.data.productInfo.code, // 分享的路径(注意要与app.json中声明的路径一致)
      imageUrl: this.data.productInfo.path // 分享的图片(可选)
    };
  },

path里面所携带的参数就是为了onload里面this.getDetails(e);方法请求使用。其实只要和列表跳转详情页面参数保持一致就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力成为包租婆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值