66 lines
1.6 KiB
JavaScript
66 lines
1.6 KiB
JavaScript
import "./assets/css/main.css";
|
||
import 'element-ui/lib/theme-chalk/index.css';
|
||
import ElementUI from 'element-ui';
|
||
|
||
import i18n from './components/common/i18n'
|
||
|
||
import Vue from 'vue'
|
||
import App from './App'
|
||
import router from './router'
|
||
import axios from 'axios';
|
||
import { post, get} from './http.js'
|
||
|
||
import Pagination from "./components/common/pagination"; //引入全局分页组件
|
||
Vue.component("Pagination", Pagination);
|
||
|
||
Vue.prototype.$axios = axios
|
||
Vue.prototype.$post = post;
|
||
Vue.prototype.$get = get;
|
||
|
||
Vue.config.productionTip = false
|
||
Vue.use(ElementUI)
|
||
|
||
|
||
const clickoutside = {
|
||
// 初始化指令
|
||
bind(el, binding, vnode) {
|
||
function documentHandler(e) {
|
||
// 这里判断点击的元素是否是本身,是本身,则返回
|
||
if (el.contains(e.target)) {
|
||
return false;
|
||
}
|
||
// 判断指令中是否绑定了函数
|
||
if (binding.expression) {
|
||
// 如果绑定了函数 则调用那个函数,此处binding.value就是handleClose方法
|
||
if (binding.arg) {
|
||
binding.value(e, binding.arg);
|
||
} else {
|
||
binding.value(e);
|
||
}
|
||
|
||
}
|
||
}
|
||
// 给当前元素绑定个私有变量,方便在unbind中可以解除事件监听
|
||
el.__vueClickOutside__ = documentHandler;
|
||
document.addEventListener('click', documentHandler);
|
||
},
|
||
unbind(el, binding) {
|
||
// 解除事件监听
|
||
document.removeEventListener('click', el.__vueClickOutside__);
|
||
delete el.__vueClickOutside__;
|
||
},
|
||
};
|
||
|
||
Vue.directive('clickoutside',
|
||
clickoutside
|
||
)
|
||
|
||
/* eslint-disable no-new */
|
||
new Vue({
|
||
el: '#app',
|
||
router,
|
||
i18n,
|
||
components: { App },
|
||
template: '<App/>'
|
||
})
|