1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import Vue from 'vue'
- import App from '@/App'
- import $store from '@/store'
- import config from "./config.js"
- Vue.prototype.$config = config
- import uView from "uview-ui";
- Vue.use(uView);
- //全局引入iconpark图标
- // import { install } from '@icon-park/vue/es/all';
- // install(Vue, '');
- // Vue.use(VueRouter)
- //配置跳转小程序
- // Vue.config.ignoredElements = ['wx-open-launch-weapp'];
- //配置防止连点的公共方法
- import common from './common/util/clicks.js'
- Vue.prototype.$noMultipleClicks = common.noMultipleClicks;
- // 防连点方法
- Vue.directive('throttle', {
- inserted(el, binding) {
- el.addEventListener('click', () => {
- el.style.pointerEvents = 'none'
- if (!el.disabled) {
- setTimeout(() => {
- el.style.pointerEvents = 'auto'
- }, binding.value || 2000)
- }
- })
- }
- })
- Vue.prototype.$store = $store // vuex
- Vue.prototype.$offset = function(selector) { // 获取元素宽高位置信息
- return new Promise((resolve, reject) => {
- uni.createSelectorQuery().in(this).select(selector).boundingClientRect(data => {
- console.log(data,'data')
- data ? data.x = data.left + data.width / 2 : ''
- data ? data.y = data.top + data.height / 2 : ''
- data ? resolve(data) : reject('元素不存在')
- }).exec()
- })
- }
- Vue.prototype.$scrollViewHeight = function (className) { //设置页面内 scroll view 的高度
- this.$nextTick(() => { //在 mounted 以后获取到 className 的高度,赋给 scroll view
- const query = uni.createSelectorQuery().in(this)
- query.select(className).boundingClientRect()
- query.exec(res => this.scrollViewHeight = res[0].height)
- })
- }
- Vue.prototype.$hideLoading = function() { //异步操作结束,停止 loading
- this.$nextTick(() => {
- uni.hideLoading()
- })
- }
- Vue.prototype.$drawHonour = function(ctx, infoArr) { //绘制荣誉证书
- console.log('infoArr',infoArr)
- ctx.setTextAlign('center')
- ctx.setFontSize(infoArr[0][0])
- ctx.fillText(infoArr[0][1], infoArr[0][2], infoArr[0][3])
- ctx.setFontSize(infoArr[1][0])
- ctx.fillText(infoArr[1][1], infoArr[1][2], infoArr[1][3])
- ctx.setFontSize(infoArr[2][0])
- ctx.fillText(infoArr[2][1], infoArr[2][2], infoArr[2][3])
- ctx.draw()
- }
- import CustomNav from './components/public/custom-nav.vue' //自定义头部导航栏交互组件
- import pageToast from './components/toast.vue'
- import reachBot from './components/custom-reach-bottom.vue' //自定义滚动到底部提示
- Vue.component('custom-nav', CustomNav) //注册自定义头部导航栏
- Vue.component('page-toast', pageToast)
- Vue.component('custom-reach-bottom', reachBot) //注册自定义滚动到底部提示
- import * as filters from '@/filters'
- Object.keys(filters).forEach(e => {
- Vue.filter(e, filters[e])
- })
- App.mpType = 'app'
- Vue.config.productionTip = false;
- (new Vue({
- ...App
- })).$mount()
|