duxapp RN 端使用AppUpgrade 进行版本更新
版本更新包含了组件和工具的组合
注册
下面这是 duxcms 入口文件检查更新的注册方法,注册的同时会检查更新
import {request,updateApp,userConfig
} from './utils'// 检查app更新
setTimeout(async () => {if (process.env.TARO_ENV === 'rn') {// eslint-disable-next-line no-undefif (__DEV__) {return console.log('调试模式不检查更新')}updateApp(async () => {const type = userConfig.option.duxcms?.appUpgrade?.typeconst { info } = await request({ url: 'upgrade/check', data: type ? { type } : {} })return info})}
}, 2000)
updateApp 这个方法同时是检查app更新的方法,你只需要在任何一个地方传入获取更新信息的函数,然后在其他地方使用的时候就可以不传入函数了
import { updateApp, toest } from '@/duxappReactNative'// 后续在其他地方调用,则不需要在传入函数
updateApp().then(res => {if (!res) {toest('已经是最新版本')}
})
如果有新版本,则会自动弹出提示,提示用户是否更新到新版本
注册的获取更新信息的函数,其返回值要包含这些内容
{androidVersion: '1.0.2',androidUpdateInfo: '更新内容',androidDowloadUrl: 'https://xxx.xx/xxx.apk', // 如果存在,这必须要是一个直接下载apk的地址androidUrl: '', // 如果不存在 androidDowloadUrl 可以配置这个,让用户跳转到浏览器去下载apkiosVersion: '1.0.2',iosUpdateInfo: '更新内容',iosUrl: '', // ios跳转地址,一般是传入app store的app地址
}
AppUpgrade 组件
这个组件是用来检查更新的,将一个可点击的子组件放在其中,像这样,他会自动处理更新,不需要你去使用更新方法
如果不是RN端,这个子内容不会显示出来
<AppUpgrade.Version /> 用来显示当前APP的版本信息
import { AppUpgrade } from '@/duxappReactNative'<AppUpgrade><Row items='center' justify='between' className='pv-3'><Text bold grow>版本更新</Text><Text color={3}><AppUpgrade.Version /></Text><CmsIcon name='direction_right' size={32} color={duxappTheme.textColor3} /></Row>
</AppUpgrade>
官方文档
相关文章:
duxapp RN 端使用AppUpgrade 进行版本更新
版本更新包含了组件和工具的组合 注册 下面这是 duxcms 入口文件检查更新的注册方法,注册的同时会检查更新 import {request,updateApp,userConfig } from ./utils// 检查app更新 setTimeout(async () > {if (process.env.TARO_ENV rn) {// eslint-disable-n…...
【计网】自定义序列化反序列化(三) —— 实现网络版计算器【下】
🌎实现网络版计算器【下】 本次序列化与反序列化所用到的代码,Tcp服务自定义序列化反序列化实现网络版计算器。 文章目录: 实实现网络版计算器【下】 客户端实现 基于守护进程的改写 🚀客户端实现 在这之前,…...
神经网络中的优化方法(一)
目录 摘要Abstract1. 与纯优化的区别1.1 经验风险最小化1.2 代理损失函数1.3 批量算法和小批量算法 2. 神经网络中优化的挑战2.1 病态2.2 局部极小值2.3 高原、鞍点和其他平坦区域2.4 悬崖和梯度爆炸2.5 长期依赖2.6 非精确梯度2.7 局部和全局结构间的弱对应 3. 基本算法3.1 随…...
Linux 计算机网络基础概念
目录 0.前言 1.计算机网络背景 1.1 独立模式 1.2 网络互联 1.3 局域网(Local Area Network,LAN) 1.4 广域网(Wide Area Network,WAN) 2.协议 2.1什么是协议 2.2协议分层和软件分层 2.3 OSI七层网络模型 2.3…...
qt QGraphicsEllipseItem详解
1、概述 QGraphicsEllipseItem是Qt框架中QGraphicsItem的一个子类,它提供了一个可以添加到QGraphicsScene中的椭圆项。QGraphicsEllipseItem表示一个带有填充和轮廓的椭圆,也可以用于表示椭圆段(通过startAngle()和spanAngle()方法ÿ…...
Python websocket
router.websocket(/chat/{flow_id}) 接口代码,并了解其工作流程、涉及的组件以及如何基于此实现你的新 WebSocket 接口。以下内容将分为几个部分进行讲解: 接口整体概述代码逐行解析关键组件和依赖关系如何基于此实现新功能示例:创建一个新的…...
【MySQL-5】MySQL的内置函数
目录 1. 整体学习的思维导图 2. 日期函数 编辑 2.1 current_date() 2.2 current_time() 2.3 current_timestamp() 2.4 date(datetime) 2.5 now() 2.6 date_add() 2.7 date_sub() 2.8 datediff() 2.9 案例 2.9.1 创建一个出生日期登记簿 2.9.2 创建一个留言版 3…...
深度学习笔记之BERT(三)RoBERTa
深度学习笔记之RoBERTa 引言回顾:BERT的预训练策略RoBERTa训练过程分析静态掩码与动态掩码的比较模型输入模式与下一句预测使用大批量进行训练使用Byte-pair Encoding作为子词词元化算法更大的数据集和更多的训练步骤 RoBERTa配置 引言 本节将介绍一种基于 BERT \t…...
C++知识点总结(59):背包型动态规划
背包型动态规划 一、背包 dp1. 01 背包(限量)2. 完全背包(不限量)3. 口诀 二、例题1. 和是质数的子集数2. 黄金的太阳3. 负数子集和4. NASA的⻝物计划 一、背包 dp 1. 01 背包(限量) 假如有这几个物品&am…...
C++:反向迭代器的实现
反向迭代器的实现与 stack 、queue 相似,是通过适配器模式实现的。通过传入不同类型的迭代器来实现其反向迭代器。 正向迭代器中,begin() 指向第一个位置,end() 指向最后一个位置的下一个位置。 代码实现: template<class I…...
webGL入门教程_04vec3、vec4 和齐次坐标总结
vec3、vec4 和齐次坐标总结 1. vec3 和 vec4 1.1 什么是 vec3 和 vec4? vec3: GLSL 中的三维向量类型,包含 3 个浮点数:(x, y, z)。常用于表示三维坐标、RGB 颜色、法线、方向等。 vec4: GLSL 中的四维向量类型&…...
uniapp中父组件数组更新后与页面渲染数组不一致实战记录
简单描述一下业务场景方便理解: 商品设置功能,支持添加多组商品(点击添加按钮进行增加).可以对任意商品进行删除(点击减少按钮对选中的商品设置进行删除). 问题: 正常添加操作后,对已添加的任意商品删除后,控制台打印数组正常.但是与页面显示不一致.已上图为例,选中尾…...
优化 Conda 下载速度:详细的代理配置和网络管理策略
优化 Conda 下载速度:详细的代理配置和网络管理策略 为了彻底解决使用 Conda 下载 PyTorch 时遇到的速度问题,并确保下载过程稳定可靠,这需要一个详细、综合的技术方案。让我们更深入地分析问题原因,然后详尽地解释采取的解决策略…...
服务器遭受DDoS攻击后如何恢复运行?
当服务器遭受 DDoS(分布式拒绝服务)攻击 后,恢复运行需要快速采取应急措施来缓解攻击影响,并在恢复后加强防护以减少未来攻击的风险。以下是详细的分步指南: 一、应急处理步骤 1. 确认服务器是否正在遭受 DDoS 攻击 …...
MFC音视频播放器-支持电子放大等功能
前言 本播放器在VS2019下开发,使用ffmpegD3D实现视频播放渲染功能。同时本播放器支持录像功能、截图功能、音视频播放功能、码流信息显示、电子放大功能等。D3D的渲染同时支持surface和texture两种方式,电子放大功能是在D3D Texture方式下进行实现。以下…...
c语言编程1.17蓝桥杯历届试题-回文数字
题目描述 观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的。这样的数字叫做:回文数字。 本题要求你找到一些5位或6位的十进制数字。满足如下要求: 该数字的各个数位之…...
el-table 纵向 横向 多级表头
<el-table :data"tableData" class"diaTable":span-method"handleSpanMethod"border:header-cell-style"{background:#292929,color:#fff}"><!-- 纵向表头 --><el-table-column label"纵向表头" width"…...
uniapp开发微信小程序笔记8-uniapp使用vant框架
前言:其实用uni-app开发微信小程序的首选不应该是vant,因为vant没有专门给uni-app设置专栏,可以看到目前Vant 官方提供了 Vue 2 版本、Vue 3 版本和微信小程序版本,并由社区团队维护 React 版本和支付宝小程序版本。 但是vant的优…...
分布式项目使用Redis实现数据库对象自增主键ID
hello。大家好,我是灰小猿,一个超会写bug的程序猿! 在分布式项目中,数据表的主键ID一般可能存在于UUID或自增ID这两种形式,UUID好理解而且实现起来也最容易,但是缺点就是数据表中的主键ID是32位的字符串&a…...
npm-运行项目报错:A complete log of this run can be found .......npm-cache_logs\
1.问题 没有找到对应的某种依赖,node_modules出现问题。 2.解决 (1)查看对应依赖是否引入或者是由于合并分支错误 引入js或依赖不存在。谨慎删除依赖包 (2)查找对应引入依赖进行安装最后解决方法-删除依赖包清除缓存 npm cache clean --force (2)重新向同事引入…...
从‘果冻屏’到‘瀑布屏’:OCA全贴合工艺如何悄悄改变了你的视觉体验?
从‘果冻屏’到‘瀑布屏’:OCA全贴合工艺如何悄悄改变了你的视觉体验? 还记得十年前那些让人抓狂的“果冻屏”吗?阳光下泛着彩虹纹,触控时总感觉隔着一层毛玻璃,甚至能清晰看到屏幕边缘积攒的灰尘。如今拿起任何一款旗…...
手把手拆解FD-SOI工艺流程:从SOI衬底到应变硅外延的保姆级图解
从SOI衬底到应变硅外延:FD-SOI工艺全流程拆解指南 想象一下建造一座微型城市,每一栋建筑只有头发丝直径的万分之一大小。这就是FD-SOI工艺工程师的日常工作——在硅片上用原子级精度"建造"晶体管。与传统的体硅工艺不同,FD-SOI&…...
【亲测免费】 Unity WebGL中文输入插件——为WebGL游戏开启无缝中文输入新时代!
Unity WebGL中文输入插件——为WebGL游戏开启无缝中文输入新时代! 【下载地址】UnityWebGL中文输入插件 本仓库提供了一个Unity WebGL中文输入插件,该插件支持输入法跟随和全屏功能。通过使用此插件,开发者可以在WebGL平台上实现中文输入&…...
如何高效使用AutoHotkey编译器:Ahk2Exe完整指南与实战技巧
如何高效使用AutoHotkey编译器:Ahk2Exe完整指南与实战技巧 【免费下载链接】Ahk2Exe Official AutoHotkey script compiler - written itself in AutoHotkey 项目地址: https://gitcode.com/gh_mirrors/ah/Ahk2Exe 对于Windows自动化脚本开发者而言ÿ…...
从抖动(Jitter)与往返时间(RTT)出发:构建实时音视频通信的网络质量评估体系
1. 实时音视频通信的网络质量挑战 当你参加视频会议时突然画面卡成PPT,或者直播连麦时对方声音忽大忽小,这些糟糕体验的背后往往是网络质量问题在作祟。实时音视频通信对网络环境极为敏感,就像在钢丝上骑自行车——任何微小的颠簸都可能导致严…...
XUnity自动翻译器:终极Unity游戏语言障碍解决方案指南
XUnity自动翻译器:终极Unity游戏语言障碍解决方案指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 你是否曾经因为语言不通而错过优秀的Unity游戏?是否在日文RPG、韩文视觉小说…...
Godot实战(一)—— 用C#构建2D躲避游戏的核心机制
1. 环境准备与项目初始化 第一次打开Godot引擎时,那个简洁的界面可能会让你有点不知所措。别担心,我们一步步来。点击"New Project"按钮,给你的游戏项目起个名字,比如"DodgeTheCreeps"。建议专门创建一个空文…...
实验室新到Franka机器人?保姆级Ubuntu20.04+ROS Noetic配置避坑指南
Franka机器人开箱配置全攻略:Ubuntu 20.04与ROS Noetic深度适配指南 当实验室那台崭新的Franka Emika机械臂拆箱时,整个团队都围了上来——这台价值不菲的协作机器人即将成为我们最重要的研究伙伴。但很快我们就发现,从开箱到真正让机械臂流畅…...
Gridforms响应式设计原理:如何让表单在手机、平板和桌面端完美适配
Gridforms响应式设计原理:如何让表单在手机、平板和桌面端完美适配 【免费下载链接】gridforms Data entry can be beautiful 项目地址: https://gitcode.com/gh_mirrors/gr/gridforms Gridforms是一个专注于数据录入体验的响应式表单解决方案,通…...
2025年知识竞赛行业趋势报告:智能化、场景化与生态融合
📊 2025年知识竞赛行业趋势报告技术更智能 场景更融合 内容更鲜活 工具更普惠🚀 引言:变革中的竞赛生态知识竞赛,这一古老的知识检验与娱乐形式,在数字技术的持续赋能下,正经历着一场深刻的范式变革。从…...
