main.js 2.04 KB
import Vue from 'vue'
const ncc = require('./utils/ncc').default
import App from './App.vue'
import router from './router'
import 'normalize.css/normalize.css'
import ElementUI from 'element-ui';
import * as filters from './filters' // global filters
import '@/styles/element-variables.scss'
import '@/styles/index.scss' // global css

import '@/assets/style/common.scss'
import '@/assets/scss/common.scss'
import '@/assets/scss/theme.scss' // 主题

import { message } from './utils/message';

import 'element-ui/lib/theme-chalk/index.css';
import store from './store'
import './permission'
import moment from "moment";
import i18n from './lang' // internationalization
import selectLoadMore from '@/utils/loadmore.js';
import _ from 'lodash'

import watermark from '@/utils/shuiyin'

Vue.prototype.$watermark = watermark;
Vue.config.productionTip = false
Vue.prototype.$m = moment
Vue.use(ElementUI, {
  size: ncc.storageGet('size') || 'small', // set element-ui default size
  i18n: (key, value) => i18n.t(key, value)
});
// 批量引入组件
import components from './components'
Vue.use(components)
// 添加实例属性
Object.assign(Vue.prototype, {
  define: require('@/utils/define'), // 常量
  ncc, // 公共方法
  formValidate: require('./utils/formValidate').default, // 表单验证
  $message: message
})

// 全局注册过滤器
Object.keys(filters).forEach(key => {
  Vue.filter(key, filters[key])
})

Vue.config.productionTip = false
Vue.directive('selectLoadMore', selectLoadMore)
Vue.directive('removeAriaHidden', {
  bind(el, binding) {
    let ariaEls = el.querySelectorAll('.el-radio__original');
    ariaEls.forEach((item) => {
      item.removeAttribute('aria-hidden');
    });
  }
});

router.afterEach((item) => {
  let { userName, mobilePhone } = store.state.user.userInfo
  if (item.path !== '/login') {    //判断是否为登录页面,水印的内容可自定义设置
    watermark.set(userName, mobilePhone);
  }else{
    watermark.set('','','');
  }
})
export default new Vue({
  router,
  store,
  i18n,
  render: h => h(App),
}).$mount('#app')