From 715f61d25ef0d7fe83b759d82e2741211a9f8c20 Mon Sep 17 00:00:00 2001 From: CareyWong Date: Thu, 23 Apr 2020 20:34:04 +0800 Subject: [PATCH] Detect platform --- src/main.js | 1 + src/plugins/device.js | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 src/plugins/device.js diff --git a/src/main.js b/src/main.js index 7d794ad..cd18a5e 100644 --- a/src/main.js +++ b/src/main.js @@ -6,6 +6,7 @@ require(`@/plugins/clipboard`) require(`@/plugins/base64`) require(`@/plugins/particles`) require(`@/plugins/axios`) +require(`@/plugins/device`) import '@/icons' // icon diff --git a/src/plugins/device.js b/src/plugins/device.js new file mode 100644 index 0000000..6dcdebb --- /dev/null +++ b/src/plugins/device.js @@ -0,0 +1,20 @@ +import Vue from 'vue' + +Vue.prototype.$getOS = () => { + let ua = navigator.userAgent, + isWindowsPhone = /(?:Windows Phone)/.test(ua), + isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone, + isAndroid = /(?:Android)/.test(ua), + isFireFox = /(?:Firefox)/.test(ua), + // isChrome = /(?:Chrome|CriOS)/.test(ua), + isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)), + isIPhone = /(?:iPhone)/.test(ua) && !isTablet, + isPc = !isIPhone && !isAndroid && !isSymbian && !isWindowsPhone; + + return { + isTablet: isTablet, + isIPhone: isIPhone, + isAndroid: isAndroid, + isPc: isPc + }; +}