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

技术栈: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);
	}
})
相关推荐
CRMEB系统商城18 小时前
CRMEB标准版系统(Java)v3.1正式发布
java·spring·微信小程序·php·教育电商
m0_5873830021 小时前
折扣卡CPS系统源码的技术架构与实战开发指南
人工智能·小程序·数据挖掘·系统架构·需求分析
2501_9151063221 小时前
苹果App Store上架费用及流程全面解析
android·ios·小程序·https·uni-app·iphone·webview
海岳云舟1 天前
通过Spring Authorization Server对微信小程序应用进行授权防护
微信小程序
T01156181 天前
全栈项目实战手记|艺培场馆课时预约小程序全项目开发历程完整复盘总结
运维·服务器·小程序
lhldsg1 天前
多商户团购系统源码:技术架构选型与二次开发实战指南
java·小程序·架构
2601_949950631 天前
一套小程序,解决资料整理、在线刷题和错题复盘
人工智能·小程序·刷题·练习·小程序推荐
白远山1 天前
智慧场馆解决方案小程序系统开发实战与架构设计指南
java·开发语言·小程序·架构
阿祖zu2 天前
训练师 Agent 小程序产品上线啦
微信小程序·llm·agent
Rooting++2 天前
小程序{{ }}和vue{{ }}语法的区别
前端·vue.js·小程序