小程序嵌套 h5 并分享给朋友

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

1.先准备一个https地址,用于在微信公众平台/小程序中/开发管理/开发设置/业务域名 中设置
小程序分享h5页面,小程序,vue.js,javascript主要是后续要用到 web-view 组件

2.在小程序中设置跳转信息 task/index.vue
this.graceJS.navigate(“/pagesA/task/sharePage?path=yes&houseName=”+houseName+“&typeName=”+typeName)

?path=yes&houseName=“+houseName+”&typeName="+typeName 这个是我个人要传的值,可根据实际情况填写

3.在小程序中创建一个分享页面,task/sharePage.vue


export default {
	data() {
		return {
			web_src:'https:xxxxxxx',//这个是在小程序中配置的业务域名 <!-- 第一步 -->
			//下面参数是我需要传的值,用于分享标题 (动态)
			name: '', //登录人
			houseName: '', //站房名称
			typeName: '' //任务类型
		}
	},
	onLoad(options) {
		let that = this
		let type = uni.getStorageSync('taskType');
		let id = uni.getStorageSync('taskNodeId')
		let typeTaskId = uni.getStorageSync('taskAllType');
		that.name = this.$store.state.userInfo.name
		//从本程序页面点击过来的也是从卡片点击过来的参数
		if (options.houseName) { //从task/index页面传值过来的 站房名称  用于分享
			this.houseName = decodeURIComponent(options.houseName)
		}
		//从本程序页面点击过来的也是从卡片点击过来的参数
		if (options.typeName) { //从task/index页面传值过来的 任务类型  用于分享
			this.typeName = decodeURIComponent(options.typeName)
		}
		//从本程序页面点击过来的
		//因为我要传值 判断,所以对this.web_src 进行了拼接,不需要传值的直接用data里面的web_src
		if (options.path) { 
		this.web_src += '?id=' + id +'&houseName=' + this.houseName + '&typeName=' + this.typeName+ '&type=' + type + '&typeTaskId=' + typeTaskId+'&name='+this.name +'&erweilma=yes' 
		}

		//从卡片页面点击过来的 <!-- 第三步 -->
		//分享出去后,其他人点击分享的卡片,进入小程序页面
		if (options.name) { //decodeURIComponent 解码
			this.name = decodeURIComponent(options.name)
		}
		//从分享卡片 H5点击过来的 <!-- 第三步 -->
		if (options.shareUrl) { //decodeURIComponent 解码
			that.web_src = decodeURIComponent(options.shareUrl)+'&houseName=' + this.houseName + '&typeName=' + this.typeName+'&name='+this.name;
		}
		
	},
	/**
	 * 用户点击右上角分享 第二步 
	 */
	onShareAppMessage(options) {
		let that = this
		let return_url=this.web_src+'&erweilma=no'
		//分享出去的路径,当其他人从卡片点击进入时,就可以进入小程序pagesA/task/sharePage这个页面
		//'pagesA/task/sharePage?shareUrl=' + encodeURIComponent(return_url)这句与上方onload方法里面的if (options.shareUrl) {}对应
		var path = 'pagesA/task/sharePage?shareUrl=' + encodeURIComponent(return_url)+'&houseName=' + encodeURIComponent(this.houseName)+'&typeName='+ encodeURIComponent(this.typeName)+'&name='+encodeURIComponent(this.name) ; //此处加密,onload里面就要解密
		var titles = ''//动态title
		if (that.houseName != null && that.houseName != '' && that.houseName != 'null') {
			titles = that.name + '/' + that.houseName + '/' + that.typeName
		} else {
			titles = that.name + '/' + that.typeName
		}
		return {
			title: titles,
			path: path,
			success: function(res) {
				// 转发成功
				uni.showToast({
					title: "转发成功",
					icon: 'success',
					duration: 2000
				})
			},
			fail: function(res) {
				// 转发失败
			}
		}
	},
}

4.准备一个H5页面,放在服务器https:xxx里面

//因为我这次需要传参,所以H5里面的参数解析为
onLoad(option) {
			let that = this
			// 获取参数  必须这样获取 h5打包 后才有效  而且需相对路径 ./
			var url = window.location.search;
			// var url = 'https:/xxxx/?id=47&type=2&typeTaskId=1&erweilma=no'//为了本地测试
			var theRequest = new Object();
			if (url.indexOf("?") != -1) {
				var index = url.indexOf("?");
				var str = url.substr(index + 1, url.length); //04
				var strs = str.split("&");
				for (var i = 0; i < strs.length; i++) {
					theRequest[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
				}
			}
			that.ids=theRequest['id']
			that.typeTaskId=theRequest['typeTaskId']
			that.type=theRequest['type']
			that.erweilma=theRequest['erweilma']
		},

/此文章 只是用于记录/文章来源地址https://www.toymoban.com/news/detail-542259.html

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

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

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

相关文章

  • 小程序分享页面转发给朋友是灰色如何处理

    前言 在微信小程序中,将小程序转发给我朋友,发现转发到朋友圈是灰色的 ::: hljs-center ::: 解决方法 解决方法有两种: 每个页面配置, 使用uniapp全局配置。 微信原生写法 局部配置 每个页面局部配置,在页面下,和data同级 全局配置: 在app.js中加入以下代码 UniApp写法 新建

    2024年04月17日
    浏览(31)
  • uniapp实现小程序页面转发和分享到朋友圈

    1、借助uniapp中页面生命周期钩子onShareAppMessage(OBJECT)用户点击右上角分享 在 js 中定义 onShareAppMessage 处理函数(和 onLoad 等生命周期函数同级),设置该页面的分享信息。 2、借助uniapp中页面生命周期钩子onShareTimeline监听用户点击右上角转发到朋友圈 在 js 中定义 onShareTimeline

    2024年02月15日
    浏览(35)
  • 小程序嵌套h5页面,使用navigator.mediaDevices.getUserMedia的坑点

    基本上在使用这个方法的时候,网上都是全部做好兼容性考虑的,直接复制即可,但是如果微信小程序嵌套了页面就会出现问题; 当苹果手机用户使用时,如果ios版本低于14.3的时候就会提示报错:undefned is not an object (evaluating navigator.mediaDevices.getUserMedia\\\') 这个时由于iOS webk

    2024年02月03日
    浏览(34)
  • uniapp微信小程序全局实现发送给朋友、分享到朋友圈功能(不需要每个页面都配置)

    使用uniapp开发小程序的过程中需要实现: 点击右上角,展开,发送给朋友、分享到朋友圈功能 我们先看没有配置时微信的分享和转发按钮的状态: 配置完成后分享和转发按钮的状态: 接下来分享全局实现的步骤(不需要在每个页面单独配置): 在utils文件夹下新建share.js文

    2024年04月14日
    浏览(71)
  • vue3引入JS-SDK实现h5分享小卡片、跳转微信小程序功能

    微信js-sdk官方文档: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html 想要实现的效果: 1.登录微信公众平台,进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 2.通过npm引入js-sdk 安装成功后,可以在package.json中找到\\\"weixin-js-sdk\\\" 3.在main.js中,将js-sdk挂载

    2024年02月11日
    浏览(62)
  • H5分享h5页面、小程序到微信

    先去微信公众平台填写js接口安全域名 本来想用微信开发js-sdk的,但是做了半天好像没啥效果 概述 | 微信开放文档 (qq.com) 引入js文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js  代码部分: 单独的h5是唤不起微信的,需要原生app去集成微信的sdk,app去调微信的方法,h5再去调app的方

    2024年02月09日
    浏览(45)
  • h5页面调用小程序分享方法

    小程序端 H5端

    2024年02月03日
    浏览(43)
  • 微信分享第三方连接(H5页面)自定义缩略图、标题、描述(显示分享框,而不是链接)(微信JS-SDK)

    首先要说明几个分享相关的问题: 现在微信不支持自定义按钮分享组件(也就是说不能点击某个按钮分享),只能通过微信右上角的三个小点,点击后选择分享给朋友,朋友圈等。 当前从企业微信分享到微信好友和微信朋友圈是有问题的,一些手机(有些是因为app版本,企

    2024年02月09日
    浏览(52)
  • uniapp开发中基于vue的混入(mixin) 实现微信小程序全局【发送给朋友】、【分享到朋友圈】、【复制链接】

    一、在开发微信小程序的时候,发现【发送给朋友】、【分享到朋友圈】、【复制链接】功能,灰色不可用。 很常见的功能,但是这几个功能,并不是你项目建起来了就有的。 1.【发送给朋友】使用 onShareAppMessage 这个方法 如果你的小程序,发现他的【转发给朋友】的按钮时

    2024年01月17日
    浏览(65)
  • 微信小程序内嵌H5页面获取openid+分享功能

    主要实现功能:1.通过webview实现小程序内嵌H5页面                          2.在H5页面获取到用户的openid                          3.在H5页面实现分享获取到分享人的openid和被分享者的openid 代码实现: 1.通过webview实现小程序内嵌H5页面 传参:在地址后面加入的参数就是我

    2024年04月23日
    浏览(57)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包