【TS】判断应用的运行环境(安卓,IOS,H5,微信浏览器,微信小程序, PC)
import { PlatFormEnv } from './enum'const userAgent = window?.navigator.userAgent;
const mobileEnv = ['Android', 'iPhone', 'iPad', 'IPod']; // 手机环境
const platFormEnv = (() => {
if (!userAgent) return null;
let isMobiel = false;
mobileEnv.forEach((mobileEnvStr: string) => {
if (userAgent.indexOf(mobileEnvStr) !== -1) isMobiel = true;
})
if (isMobiel) {
// 是否微信环境
if (/Micromessenger/i.test(userAgent)) {
// 是否小程序环境
if(/miniprogram/i.test(userAgent)) return PlatFormEnv.MINI_PROGRAMER
// 返回微信浏览器环境
return PlatFormEnv.WEICHAT
} else {
// 是否App环境
if (/isapp/i.test(userAgent)) {
for (let i = 0; i < mobileEnv.length; i++) {
if (userAgent.indexOf(mobileEnv) !== -1) {
// 返回安卓app环境
if (i === 0) return PlatFormEnv.ANDROID
// 返回ios的app环境
else return PlatFormEnv.IOS
}
}
}
}
// 返回移动端H5环境
return PlatFormEnv.WEB
}
// 返回PC环境
return PlatFormEnv.PC
})()
export default platFormEnv
页:
[1]