弘帝企业智能建站系统交流平台

 找回密码
 立即注册
查看: 1254|回复: 0

【TS】判断应用的运行环境(安卓,IOS,H5,微信浏览器,微信小程序, PC)

[复制链接]
发表于 2021-5-24 11:34:09 | 显示全部楼层 |阅读模式
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[i]) !== -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
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|弘帝企业智能建站系统 ( 皖ICP备07503252号 )

GMT+8, 2024-4-20 00:35 , Processed in 0.052998 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表