手機(jī)網(wǎng)站菜單設(shè)計(jì)模板互聯(lián)網(wǎng)營(yíng)銷師
版本更新包含了組件和工具的組合
注冊(cè)
下面這是 duxcms
入口文件檢查更新的注冊(cè)方法,注冊(cè)的同時(shí)會(huì)檢查更新
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('調(diào)試模式不檢查更新')}updateApp(async () => {const type = userConfig.option.duxcms?.appUpgrade?.typeconst { info } = await request({ url: 'upgrade/check', data: type ? { type } : {} })return info})}
}, 2000)
updateApp
這個(gè)方法同時(shí)是檢查app更新的方法,你只需要在任何一個(gè)地方傳入獲取更新信息的函數(shù),然后在其他地方使用的時(shí)候就可以不傳入函數(shù)了
import { updateApp, toest } from '@/duxappReactNative'// 后續(xù)在其他地方調(diào)用,則不需要在傳入函數(shù)
updateApp().then(res => {if (!res) {toest('已經(jīng)是最新版本')}
})
如果有新版本,則會(huì)自動(dòng)彈出提示,提示用戶是否更新到新版本
注冊(cè)的獲取更新信息的函數(shù),其返回值要包含這些內(nèi)容
{androidVersion: '1.0.2',androidUpdateInfo: '更新內(nèi)容',androidDowloadUrl: 'https://xxx.xx/xxx.apk', // 如果存在,這必須要是一個(gè)直接下載apk的地址androidUrl: '', // 如果不存在 androidDowloadUrl 可以配置這個(gè),讓用戶跳轉(zhuǎn)到瀏覽器去下載apkiosVersion: '1.0.2',iosUpdateInfo: '更新內(nèi)容',iosUrl: '', // ios跳轉(zhuǎn)地址,一般是傳入app store的app地址
}
AppUpgrade 組件
這個(gè)組件是用來(lái)檢查更新的,將一個(gè)可點(diǎn)擊的子組件放在其中,像這樣,他會(huì)自動(dòng)處理更新,不需要你去使用更新方法
如果不是RN端,這個(gè)子內(nèi)容不會(huì)顯示出來(lái)
<AppUpgrade.Version />
用來(lái)顯示當(dāng)前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>
官方文檔