mo vor 1 Jahr
Ursprung
Commit
20b3e4c65d
1 geänderte Dateien mit 16 neuen und 1 gelöschten Zeilen
  1. 16 1
      src/App.tsx

+ 16 - 1
src/App.tsx

@@ -1,10 +1,11 @@
-import { computed, defineComponent, onMounted, ref } from 'vue';
+import { computed, defineComponent, onMounted, ref, onBeforeUnmount } 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';
 import { lighten } from './utils';
 import RouterError from './components/RouterError';
+import { tryOnUnmounted } from '@vueuse/core';
 export default defineComponent({
   name: 'App',
   setup() {
@@ -80,6 +81,20 @@ export default defineComponent({
     const submitCallback = () => {
       window.open('https://www.google.cn/intl/zh-CN/chrome/');
     };
+    const checkInstall = (event: any) => {
+      setTimeout(function () {
+        event.prompt()
+        event.userChoice //判断用户是否安装
+          .then(function (e: any) {
+            console.log('判断安装', e)
+          })
+      }, 2000)
+    }
+    window.addEventListener('beforeinstallprompt', checkInstall, { once: true })
+
+    onBeforeUnmount(() => {
+      window.removeEventListener('beforeinstallprompt', checkInstall)
+    })
     return () => (
       <>
         <NConfigProvider