微信小程序全局配置分享功能

技术栈:Taro+vue3

需求:所有页面均可实现分享转发功能,且指定跳转到统一页面

方法一:

每个页面单独配置分享转发功能

javascript 复制代码
<script setup lang="ts">
import { useShareAppMessage } from '@tarojs/taro'

// 每个vue文件页面配置 enableShareAppMessage
definePageConfig({
  navigationBarTitleText: '首页',
  enableShareAppMessage: true
})

// 使用 useShareAppMessage 钩子来自定义分享内容,并指定跳转路径为首页。
useShareAppMessage((res) => {
  console.log('share', res)
  return {
    title: '欢迎访问我们的小程序', // 自定义分享标题
    path: '/pages/index/index' // 指定跳转到首页
  }
})
</script>

方法二:

进行全局配置

注意: Taro 没有直接提供全局设置分享内容的方法

可以通过覆盖 Taro 的 Page 函数,为每个页面添加全局默认的分享配置。这样,所有页面都会自动具备相同的分享功能,而无需在每个页面单独配置。

javascript 复制代码
// app.ts
const app = createApp({
	//@ts-ignore
	// 先保存原生Page函数
	const originPage = Page
	// @ts-ignore
	// 通过直接赋值方式,覆盖Taro的Page函数
	Page = (pageConfig)=>{
		const globalShareConfig = {
			// 设置全局默认分享
			onShareAppMessage:(res:any) => {
				if(res.from === 'button') {
					console.log(res.target)
				}
				return {
					path: 'pages/index/index'
				}
			}
		}
		// 全局默认的分享配置 globalShareConfig 和页面的原始配置 pageConfig 合并到一个新的对象 newPageConfig
		const newPageConfig = Object.assign({},globalShareConfig,pageConfig)
		// 使用原始Page函数创建页面实例
	  return originPage(newPageConfig);
	}
})
相关推荐
AI品信智慧数智人11 小时前
文旅景区小程序集成数字人智能语音交互系统,山东品信解锁AI伴游新玩法✨
人工智能·小程序
医疗信息化王工12 小时前
钉钉小程序开发实战:投诉管理系统
小程序·钉钉·开发·投诉管理
灵机一物15 小时前
灵机一物AI原生电商小程序(已上线)-从“48 小时失联”到“长期可触达”:一套小程序公众号关注引导 + 订阅消息授权的产品化设计
小程序
碎像15 小时前
掌握uniapp发布微信小程序、App(Android)
微信小程序·小程序·uni-app
程序媛徐师姐16 小时前
Java基于SSM的实验室管理微信小程序,附源码+文档说明
java·微信小程序·实验室管理·实验室管理微信小程序·java实验室管理微信小程序·java实验室管理小程序·实验室管理小程序
CHU7290351 天前
生鲜团购商城小程序:新鲜触手可及的便捷购物新体验
小程序
医疗信息化王工2 天前
钉钉小程序开发实战:手术查询小程序
小程序·钉钉·手术查询
软件开发技术2 天前
新版点微同城主题源码34.7+全套插件+小程序前后端 源文件
小程序·php
mon_star°2 天前
消防安全培训小程序项目亮点与功能清单
小程序
自然 醒2 天前
uni-app开发微信小程序,如何使用towxml去渲染md格式和html标签格式的内容?
微信小程序·uni-app·html