- 🏠 简介
- 🔌 api接口
-
🔧 插件开发
- 介绍
- 插件优势
- 新建插件
- 技术栈
- 插件开发规范
- 插件目录结构
- model 层开发
- service 层开发
- api 接口开发
- menu 菜单开发
-
event 事件钩子开发
- 开发指南
- 常用事件
- SiteInit 站点初始化事件
- AddSiteAfter 站点创建后事件
- MemberRegister 会员注册后事件
- MemberLogin 会员登录后事件
- PayCreate 支付创建事件
- PaySuccess 支付成功事件
- RefundSuccess 退款成功事件
- TransferSuccess 转账成功事件
- BottomNavigation 底部导航事件
- NoticeData 消息模板数据内容事件
- GetQrcodeOfChannel 创建二维码事件
- ExportDataType 导出数据类型事件
- ExportData 导出数据源事件
- GetPosterType 海报类型事件
- GetPosterData 海报数据事件
- ShowCustomer 应用管理加载事件
- GetWechatTransferTradeScene 微信支付转账场景事件
- ThemeColor 主题风格事件
- initWap 手机端初始化加载事件
- dict 数据字典开发
- layout 自定义布局开发
- job 消息队列和计划任务开发
- notice 消息发送开发
- printer 小票打印模板开发
- export 数据导出开发
- diy 自定义组件/页面装修开发
- diy 自定义表单组件开发
- poster 自定义海报开发
- icon 引入图标
- 支付方式开发
- upgrade 插件版本升级
- 打包插件
- 授权信息变更回调通知
- 官网上架
- 📝 二次开发须知
- 👨💻 二次开发指导
-
🎬 二次开发应用插件视频教程
- 二次开发安装视频教程
- 准备工作与创建插件
- 插件目录整体说明
- 插件admin目录
- 插件app目录说明(adminapi、api、验证器)
- 插件app目录(dict、job)
- 插件app目录说明(lang、listener)
- 插件app目录说明(model、service)
- 插件uniapp目录说明
- 插件开发之后台功能开发(代码生成器)
- 插件开发之uniapp功能开发(api)第一节
- 插件开发之uniapp功能开发(api)第二节
- 插件开发之uniapp功能开发(api)第三节
- 插件安装与打包原理
- 消息队列开发
- 计划任务开发
- DIY组件和自定义页面装修开发
- 支付接口开发
- 插件升级包打包流程以及云编译功能
海报使用
预览海报效果
在海报管理列表中,点击预览即可查看海报效果
预览模式下会执行这段逻辑代码
插件根据自身业务实现(参考:niucloud/addon/shop/app/listener/poster/ShopPoster.php)
uni-app 手机端调用海报
系统框架定义了share-poster组件
关键代码:
<share-poster ref="sharePosterRef" posterType="friendspay" :posterId="poster_id" :posterParam="posterParam" :copyUrl="copyUrl" :copyUrlParam="copyUrlParam" />
import sharePoster from '@/components/share-poster/share-poster.vue'
const sharePosterRef = ref(null);
const copyUrl = ref('/app/pages/friendspay/money') // 页面地址
const copyUrlParam = ref('') // 页面地址参数
let posterParam = {}
// 打开分享海报
const openShare = ()=>{
posterParam.id = friendsInfo.value.trade_id;
posterParam.type = friendsInfo.value.trade_type;
if (userInfo.value && userInfo.value.member_id) {
posterParam.member_id = userInfo.value.member_id;
}
sharePosterRef.value.openShare()
}
// 主动预加载海报
const load = () => {
posterParam.id = friendsInfo.value.trade_id;
posterParam.type = friendsInfo.value.trade_type;
if (userInfo.value && userInfo.value.member_id) {
posterParam.member_id = userInfo.value.member_id;
}
sharePosterRef.value.loadPoster();
}
设置预加载海报,可以提高用户体验,减少等待海报生成的时间
效果图
