vue 区分pc以及移动端路由

移动设备应用越来越广泛的今天,许多网站都开始做移动端的界面展示,两者屏幕尺寸差异很大,所以展示的内容也有所差别。于是就遇到一个问题,如何判断你的页面是在移动端还是在PC端打开的。

在App.vue文件中关键代码如下

export default {
  name: "App",
  mounted() {
    if (this.isMobile()) {
      this.$router.push("/mobileIndex");
    } else {
      this.$router.push("/pcIndex");
    }
  },
  methods: {
    isMobile() {
      let flag = navigator.userAgent.match( // match方法可在字符串内检索指定的值,
        /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i
      );
      // console.log(flag)
      return flag;
    }
  }
};

通过浏览器navigator判断浏览器版本或者手机类型去跳转不同的路由

 

navigator

  •    navigator为Window对象的一个属性,指向了一个包含浏览器相关信息的对象。
  •    navigatot中包含了一些常用到的属性,如:
  •    navigator.appVersion 浏览器的版本号
  •    navigator.appName    浏览器的名称
  •    navigator.language   浏览器使用的语言
  •    navigator.platform   浏览器使用的平台
  •    navigator.userAgent  浏览器的user-agent信息 

搜集了几个常用判断的方法 下面记录下 

// ios设备
var isiOS = navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone') ||                                          navigator.userAgent.match('iPod');
// 安卓设备
var isAndroid = navigator.userAgent.match('Android');
// 微信内置浏览器
var isWeChat = navigator.userAgent.match('MicroMessenger');

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值