import Vue from 'vue';
|
import axios from './router/axios';
|
import VueAxios from 'vue-axios';
|
import App from './App';
|
import router from './router/router';
|
import './permission'; // 权限
|
import './error'; // 日志
|
import './cache';//页面缓存
|
import store from './store';
|
import {loadStyle} from './util/util'
|
import * as urls from '@/config/env';
|
import Element from 'element-ui';
|
import {
|
iconfontUrl,
|
iconfontVersion
|
} from '@/config/env';
|
import i18n from './lang'; // Internationalization
|
import './styles/common.scss';
|
import basicBlock from './components/basic-block/main';
|
import basicContainer from './components/basic-container/main';
|
import thirdRegister from './components/third-register/main';
|
import flowDesign from './components/flow-design/main';
|
import avueUeditor from 'avue-plugin-ueditor';
|
import website from '@/config/website';
|
import crudCommon from '@/mixins/crud';
|
import Divider from '@/components/Divider/index'
|
import '@/directive/el-drag-dialog/dialogDrag'
|
|
//表单组件
|
import basicForm from "@/components/PLT-basic-component/basicForm";
|
// 业务组件
|
import tenantPackage from './views/system/tenantpackage';
|
// 基础绑定表单按钮
|
import dynamicButton from '@/components/dynamic-components/dynamic-button'
|
// 基础动态弹窗表单组件
|
import dynamicTableForm from '@/components/dynamic-components/dynamic-table-form'
|
// ui定义表单组件
|
import dynamicForm from '@/components/dynamic-components/dynamic-form'
|
// 富文本组件
|
import richText from '@/components/PLT-basic-component/richText'
|
// 上传文件组件
|
import uploadFile from '@/components/PLT-basic-component/upload-file'
|
// 表单上传文件组件
|
import formUpload from "@/components/PLT-basic-component/formUpload";
|
// 穿梭框组件
|
import transfer from "@/components/PLT-basic-component/transfer";
|
// 注册全局容器
|
Vue.component('basicContainer', basicContainer);
|
Vue.component('basicBlock', basicBlock);
|
Vue.component('basicForm', basicForm);
|
Vue.component('thirdRegister', thirdRegister);
|
Vue.component('avueUeditor', avueUeditor);
|
Vue.component('flowDesign', flowDesign);
|
Vue.component('tenantPackage', tenantPackage);
|
Vue.component('dynamicButton', dynamicButton);
|
Vue.component('dynamicTableForm', dynamicTableForm);
|
Vue.component('dynamicForm', dynamicForm);
|
Vue.component('richText', richText);
|
Vue.component('uploadFile', uploadFile);
|
Vue.component('formUpload', formUpload);
|
Vue.component('Divider', Divider);
|
Vue.component('transfer', transfer);
|
import ECharts from 'vue-echarts'
|
Vue.component('v-chart', ECharts)
|
|
import 'quill/dist/quill.core.css'
|
import 'quill/dist/quill.snow.css'
|
import 'quill/dist/quill.bubble.css'
|
import VueQuillEditor from 'vue-quill-editor'
|
|
Vue.use(VueQuillEditor)
|
// 注册全局crud驱动
|
window.$crudCommon = crudCommon;
|
// 加载Vue拓展
|
Vue.use(router);
|
Vue.use(VueAxios, axios);
|
Vue.use(Element, {
|
i18n: (key, value) => i18n.t(key, value)
|
});
|
Vue.use(window.AVUE, {
|
size: 'small',
|
tableSize: 'small',
|
calcHeight: 65,
|
i18n: (key, value) => i18n.t(key, value)
|
});
|
// 加载相关url地址
|
Object.keys(urls).forEach(key => {
|
Vue.prototype[key] = urls[key];
|
});
|
// 加载NutFlow
|
Vue.use(window.WfDesignBase);
|
// 加载website
|
Vue.prototype.website = website;
|
// 动态加载阿里云字体库
|
iconfontVersion.forEach(ele => {
|
loadStyle(iconfontUrl.replace('$key', ele));
|
});
|
|
Vue.config.productionTip = false;
|
|
new Vue({
|
router,
|
store,
|
i18n,
|
render: h => h(App)
|
}).$mount('#app');
|