uniapp vue分享功能集成

  1. 分享必须通过button设置open-type="share"拉起
<view class="img horizontal center" style="margin-right: 20rpx;">
	<image class="img" :src="src" @click="onTapClick('xxx')" 
		style="z-index: 1;" />
	<button v-if="curBarrier > 5" class="share-btn transparent" open-type="share"
		style="z-index: 2; position: absolute;">
	</button>
</view>

	.share-btn {
		width: 170rpx;
		height: 56rpx;
		border: none !important;
		plain: true;
		background: transparent;
		//不加这个属性,隐藏边框抖音可以,快手失效了
		box-shadow: none;
		&::after {
			border: none;
		}
	}

基本逻辑就是在某个按钮上面覆盖一个全透明button,这样更方便实现UI设计和交互,z-index则是控制view层级的,越大的再上面,然后position:absolute 设置不受其他view影响,重叠view时也用这个设置

再然后写一个全局通用的分享回调的js方法:

export default {

	async onShareAppMessage(options) {
		//options.from 有menu button两个值
		//options.channel 分享为空‘’, 拍抖音为‘video’
		console.log(TAG, "onShareAppMessage options:", options)
		let path = '/' + this.$mp.page.route
		console.log(TAG, 'onShareAppMessage path:', path)
		let title = "进入"
		let finalParam = {
			title: title,
			path: path
		}
		
		if ('button' == options.from && 'video' == options.channel) {
		}
		console.log(TAG, 'onShareAppMessage finalParam:', finalParam)
		return finalParam
	},
	methods: {
	}
}

然后在 main.js app入口文件中混入这个js 方法
import Share from ‘modules/mod_account/Share’
Vue.mixin(Share)
不了解混入机制的参考 :(https://blog.csdn.net/qq_41809113/article/details/121912330)

需要重写的在对应vue文件的data 同级下重写onShareAppMessage方法即可
onShareAppMessage(options) {
console.log(TAG,“onShareAppMessage 点击options:” , options)
},

uniApp 是一款基于微信小程序平台开发跨平台应用的框架,它允许开发者利用一套代码即可构建出能在微信、支付宝、百度等多个平台运行的应用程序。uniApp 支持多种前端技术栈,包括 Vue.js 和 React 等,使得开发者能够选择最适合项目需求的技术方案。 **uniApp + Vue3 的组合** 当使用 uniApp 结合 Vue3 进行开发时,可以充分发挥 Vue3 的优势以及 uniApp 的跨平台能力。Vue3 相比于 Vue2 引入了多项改进和优化,如更高效的渲染引擎(使用 Composition API 或 Options API)、性能提升、更好的语法支持等,这都让应用开发变得更加高效和便捷。 **uniApp 中使用 Jest 进行测试** Jest 是一个用于 JavaScript 项目的快速集成式测试工具,特别适合于单文件组件、模块化应用的单元测试。在 uniApp 项目中引入 Jest 可以帮助开发者对 Vue 组件进行详尽的自动化测试,确保每个功能模块的正常运行,同时提高代码的质量和维护性。 在 uniApp Vue3 应用中,你可以使用 Jest 来编写测试脚本来验证组件的交互行为、数据处理逻辑、以及 API 调用等功能。为了在 uniApp 中设置和运行 Jest 测试,你需要首先确保你的环境已安装了必要的依赖包,如 `@vue/test-utils`、`jest-plugin-vue` 等,并按照官方文档配置相应的测试设置和环境。 **相关问题 - 实践案例:** 1. **如何在 uniApp Vue3 项目中集成 Jest 进行单元测试?** 首先需要安装 Jest 和相关的 Vue 插件,然后在项目目录下创建测试文件夹并编写针对各个组件和功能的测试用例。确保在 `package.json` 文件中添加了测试脚本命令,以便运行 Jest。 2. **在 uniApp Vue3 项目中如何编写和运行测试用例?** 编写测试用例时,可以利用 Vue Test Utils 和其他 Jest 具有的断言库来进行组件交互模拟、状态变更检测等操作。通过 Jest 提供的 CLI 工具,可以直接从命令行运行所有的测试文件,获取测试结果和反馈信息。 3. **uniApp Vue3 项目中的测试覆盖率应该如何监控和提高?** 利用 Jest 内置的报告工具,如 Codecov 或 istanbul,可以帮助监控测试覆盖率情况。通过分析覆盖率报告,找出未覆盖的代码路径,进一步完善测试用例,以达到更高的代码覆盖率目标。同时,持续改进测试策略和代码设计,可以使测试过程更为有效,减少潜在的 Bug 出现概率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值