微信小程序想给每个页面都加上分享功能,可以全局的加吗?

news/2024/12/2 14:34:40/

每个页面都设置onShareAppMessage方法,让每个页面都可以分享

然后发现了一个wx.onAppRoute

wx.onAppRoute(() =>{console.log('当前页面路由发生变化 触发该事件onShareAppMessage')const pages = Taro.getCurrentPages() //获取加载的页面const view = pages[pages.length - 1] //获取当前页面的对象if(!view) return false //如果不存在页面对象 则返回// 若想给个别页面做特殊处理 可以给特殊页面加isOverShare为true 就不会重写了// const data = view.data// if (!data.isOverShare) {// data.isOverShare = trueconsole.log(123123, view);Taro.showShareMenu({showShareItems: ['shareAppMessage', 'shareTimeline']})view.onShareAppMessage = () => { //重写分享配置return {title: 'AI 秀(show)出你的美',path: "/pages/index/index", //若无path 默认跳转分享页imageUrl: 'https://mobvoi-ai-public.cn-bj.ufileos.com/FOLDER/image/generation/2023-03-29/1641026841173315586.png',}}view.onShareTimeline = () => { //重写分享配置return {title: 'AI 秀(show)出你的美',path: "/pages/index/index", //若无path 默认跳转分享页imageUrl: 'https://mobvoi-ai-public.cn-bj.ufileos.com/FOLDER/image/generation/2023-03-29/1641026841173315586.png',}}// }
})

也可以全局监听页面路由。如果没有登陆并且需要注册就去注册页面

wx.onAppRoute((route) => {

    const protectedRoutes = [

      'pages/protected/1',

      'pages/protected/2',

      'pages/protected/3'

    ]

    if (!store.userLoggedIn() && protectedRoutes.find(r => route.path.includes(r))) {

      wx.redirectTo({

        url: '/pages/register/register'

      })

    }

 })


http://www.ppmy.cn/news/49480.html

相关文章

Java:JDK对IPv4和IPv6处理介绍

以下以JDK8为例说明对IPv4和IPv6是如何处理的。 一、常用代码 一般情况下,使用如下代码可以获取到域名/主机名对应的多个IP,其中部分是IPv4的,部分是IPv6的: try {InetAddress[] addrs InetAddress.getAllByName(host);for (I…

2023年全国最新二级建造师精选真题及答案60

百分百题库提供二级建造师考试试题、二建考试预测题、二级建造师考试真题、二建证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 51.关于债的基本法律关系的说法,正确的是()。 A.债是不特…

6 计时器(六)

6.7 TMI编码器接口 Encoder Interface 编码器接口 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度 每个高级定时器和通…

Linux下C/C++实现(网络流量分析-NTA)

网络流量分析(NTA - Network Traffic Analysis) 就是捕捉网络中流动的数据包,并通过查看包内部数据以及进行相关的协议、流量、分析、统计等,协助发现网络运行过程中出现的问题。通过监控和分析网络环境中的流量,来判断流量是用在…

Linux下彻底解决mysql中文乱码

文章目录 Linux下彻底解决mysql中文乱码1.修改 MySQL 服务器的字符集为 UTF-8,可以在 my.cnf 配置文件中添加以下内容:2.使用时修改 MySQL 数据库和表的字符集为 UTF-8,可以使用以下命令:3.在建立数据库连接时,使用 UT…

【LeetCode】144.二叉树的前序遍历

1.问题 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。示例 1: 输入:root [1,null,2,3] 输出:[1,2,3] 示例 2: 输入:root [] 输出:[] 示例 3: 输入:root [1]…

如何智能改写文案内容-如何用ai改字

伪原创在线文章生成器 在当今数字时代,营销推广已成为各行各业的必备工具,其中之一便是内容营销。作为内容营销的一部分,文章撰写是非常关键的环节。为了满足市场需求,越来越多的在线文章生成器涌现出来,其中最受欢迎…

【C++】二叉搜索树(概念、实现、应用以及OJ题详解)

前言: 此前我们在C语言实现数据结构的时候学习过二叉树,但是那个时候我们没有深入学习二叉搜索树。本章重提二叉树并详解二叉搜索树有下面两个原因: 1、为我们下一章学习set和map做准备;2、详解我们进阶一点的二叉树的面试OJ题&a…