|  | @@ -1,5 +1,5 @@
 | 
	
		
			
				|  |  | -import { computed, defineComponent } from 'vue';
 | 
	
		
			
				|  |  | -import { NConfigProvider, zhCN, dateZhCN } from 'naive-ui';
 | 
	
		
			
				|  |  | +import { computed, defineComponent, onMounted, ref } from 'vue';
 | 
	
		
			
				|  |  | +import { NConfigProvider, zhCN, dateZhCN, NModal } from 'naive-ui';
 | 
	
		
			
				|  |  |  import { AppProvider } from './components/Application';
 | 
	
		
			
				|  |  |  import { RouterView } from 'vue-router';
 | 
	
		
			
				|  |  |  import setting from './settings/designSetting';
 | 
	
	
		
			
				|  | @@ -8,9 +8,11 @@ import RouterError from './components/RouterError';
 | 
	
		
			
				|  |  |  export default defineComponent({
 | 
	
		
			
				|  |  |    name: 'App',
 | 
	
		
			
				|  |  |    setup() {
 | 
	
		
			
				|  |  | +    const isIOSChrome = ref();
 | 
	
		
			
				|  |  |      const getThemeOverrides = computed(() => {
 | 
	
		
			
				|  |  |        const appTheme = setting.appTheme;
 | 
	
		
			
				|  |  |        const lightenStr = lighten(setting.appTheme, 6);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |        return {
 | 
	
		
			
				|  |  |          common: {
 | 
	
		
			
				|  |  |            primaryColor: appTheme,
 | 
	
	
		
			
				|  | @@ -22,6 +24,63 @@ export default defineComponent({
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  | +    const showModal = ref(false);
 | 
	
		
			
				|  |  | +    const showModalMsg = ref('');
 | 
	
		
			
				|  |  | +    // 判断浏览器
 | 
	
		
			
				|  |  | +    const isChrome = () => {
 | 
	
		
			
				|  |  | +      const isChromium = (window as any).chrome;
 | 
	
		
			
				|  |  | +      const winNav = window.navigator;
 | 
	
		
			
				|  |  | +      const vendorName = winNav.vendor;
 | 
	
		
			
				|  |  | +      const isOpera = typeof (window as any).opr !== 'undefined';
 | 
	
		
			
				|  |  | +      const isIEedge = winNav.userAgent.indexOf('Edge') > -1;
 | 
	
		
			
				|  |  | +      isIOSChrome.value = winNav.userAgent.match('CriOS');
 | 
	
		
			
				|  |  | +      return (
 | 
	
		
			
				|  |  | +        isIOSChrome.value ||
 | 
	
		
			
				|  |  | +        (isChromium !== null &&
 | 
	
		
			
				|  |  | +          typeof isChromium !== 'undefined' &&
 | 
	
		
			
				|  |  | +          vendorName === 'Google Inc.' &&
 | 
	
		
			
				|  |  | +          isOpera === false &&
 | 
	
		
			
				|  |  | +          isIEedge === false)
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    // 获取谷歌版本
 | 
	
		
			
				|  |  | +    const getChromeVersion = () => {
 | 
	
		
			
				|  |  | +      const arr = navigator.userAgent.split(' ');
 | 
	
		
			
				|  |  | +      let chromeVersion = '' as any;
 | 
	
		
			
				|  |  | +      for (let i = 0; i < arr.length; i++) {
 | 
	
		
			
				|  |  | +        if (/chrome/i.test(arr[i])) chromeVersion = arr[i];
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      if (chromeVersion) {
 | 
	
		
			
				|  |  | +        return Number(chromeVersion.split('/')[1].split('.')[0]);
 | 
	
		
			
				|  |  | +      } else {
 | 
	
		
			
				|  |  | +        return false;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    const isChromeFlag = isChrome();
 | 
	
		
			
				|  |  | +    console.log(isChromeFlag, 'isChromeFlag', isIOSChrome.value);
 | 
	
		
			
				|  |  | +    if (isChromeFlag) {
 | 
	
		
			
				|  |  | +      const chromeVersion = getChromeVersion();
 | 
	
		
			
				|  |  | +      if (!chromeVersion || (chromeVersion && chromeVersion < 100)) {
 | 
	
		
			
				|  |  | +        showModalMsg.value =
 | 
	
		
			
				|  |  | +          '您当前的chrome版本过低,为了保证您的用户体验,点击确定下载';
 | 
	
		
			
				|  |  | +        showModal.value = true;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      // if (chromeVersion) {
 | 
	
		
			
				|  |  | +      //   return Number(chromeVersion.split('/')[1].split('.')[0]);
 | 
	
		
			
				|  |  | +      // } else {
 | 
	
		
			
				|  |  | +      //   return false;
 | 
	
		
			
				|  |  | +      // }
 | 
	
		
			
				|  |  | +    } else {
 | 
	
		
			
				|  |  | +      showModalMsg.value = '为了保证您的用户体验,请使用chrome打开,点击确定下载';
 | 
	
		
			
				|  |  | +      showModal.value = true;
 | 
	
		
			
				|  |  | +      console.log('---');
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    const submitCallback = () => {
 | 
	
		
			
				|  |  | +      window.open('https://www.google.cn/intl/zh-CN/chrome/');
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  |      return () => (
 | 
	
		
			
				|  |  |        <>
 | 
	
		
			
				|  |  |          <NConfigProvider
 | 
	
	
		
			
				|  | @@ -35,6 +94,16 @@ export default defineComponent({
 | 
	
		
			
				|  |  |              <RouterError />
 | 
	
		
			
				|  |  |            </AppProvider>
 | 
	
		
			
				|  |  |          </NConfigProvider>
 | 
	
		
			
				|  |  | +        <NModal
 | 
	
		
			
				|  |  | +          show={showModal.value}
 | 
	
		
			
				|  |  | +          closeOnEsc={false}
 | 
	
		
			
				|  |  | +          closable={false}
 | 
	
		
			
				|  |  | +          maskClosable={false}
 | 
	
		
			
				|  |  | +          preset="dialog"
 | 
	
		
			
				|  |  | +          title="确认"
 | 
	
		
			
				|  |  | +          content={showModalMsg.value}
 | 
	
		
			
				|  |  | +          positive-text="确认"
 | 
	
		
			
				|  |  | +          onPositiveClick={submitCallback}></NModal>
 | 
	
		
			
				|  |  |        </>
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  |    }
 |