Mr.Shi
2023-08-11 b15a83329e33a954f41c9558b58aa1a64332c46b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import { createApp } from 'vue'
// import VConsole from 'vconsole'
import App from './App.vue'
import router from './router'
import store from './store'
// @ts-ignore
// import QrcodeReaderVue3 from 'qrcode-reader-vue3'
import Vant from 'vant'
import * as dd from 'dingtalk-jsapi'
import 'vant/lib/index.css'
import 'lib-flexible/flexible.js'
import { auth } from '@/utils/utils'
// const vConsole = new VConsole()
import ScanCode from '@/components/common/ScanCode.vue'
import Search from '@/components/common/Search.vue'
 
const app = createApp(App)
 
app.config.globalProperties.$onWait = new Promise((resolve) => {
    app.config.globalProperties.$reslove = resolve
})
 
app.config.globalProperties.$dd = dd    // 全局挂载钉钉
 
app.config.globalProperties.$auth = auth    // 全局挂载权限验证方法
 
if (dd.env.platform !== 'notInDingTalk') {      // 顶顶段禁止IOS回弹效果
    // @ts-ignore
    dd.ui.webViewBounce.disable()
}
 
app.component('v-ScanCode', ScanCode)     // 挂载全局扫码组件
 
app.component('v-Search', Search)     // 挂载全局搜索组件
 
app.directive('preventReClick', {    // 防止按钮重复提交
    mounted(el, bindings, vnode, preVnode) {
        el.addEventListener('click', () => {
            if (!el.disabled) {
                el.disabled = true
                setTimeout(() => {
                    el.disabled = false
                },bindings.value || 2000)
            }
        })
    }
})
 
app.use(store)
   .use(router)
   .use(Vant)
    // @ts-ignore
//    .use(vConsole)
app.mount('#app')