import Vue from 'vue' import i18n from '@/i18n' import { VXETable, Table, Column, Header, Footer, Filter, Grid, Menu, Toolbar, Pager, Checkbox, Radio, Input, Textarea, Button, Modal, Tooltip, Form, Select, Switch, List, Pulldown, Edit, Export, Keyboard, Validator } from '../../../packages/vxe-table' import VXETablePluginElement from 'vxe-table-plugin-element' import VXETablePluginIView from 'vxe-table-plugin-iview' import VXETablePluginAntd from 'vxe-table-plugin-antd' import VXETablePluginVirtualTree from 'vxe-table-plugin-virtual-tree' import VXETablePluginMenus from 'vxe-table-plugin-menus' import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx' import VXETablePluginExportPDF from 'vxe-table-plugin-export-pdf' import 'vxe-table-plugin-element/dist/style.css' import 'vxe-table-plugin-iview/dist/style.css' import 'vxe-table-plugin-antd/dist/style.css' import 'vxe-table-plugin-virtual-tree/dist/style.css' // 设置默认参数 VXETable.setup({ table: { exportConfig: { types: ['csv', 'html', 'xml', 'txt'] } }, translate: (key, args) => key && key.indexOf('app.') > -1 ? i18n.t(key, args) : key, // 自动翻译以 app. 开头的键值 i18n: (key, args) => i18n.t(key, args) }) // 先安装依赖模块 Vue.use(Column) Vue.use(Header) Vue.use(Footer) Vue.use(Filter) Vue.use(Grid) Vue.use(Menu) Vue.use(Toolbar) Vue.use(Pager) Vue.use(Checkbox) Vue.use(Radio) Vue.use(Input) Vue.use(Textarea) Vue.use(Button) Vue.use(Modal) Vue.use(Tooltip) Vue.use(Form) Vue.use(Select) Vue.use(Switch) Vue.use(List) Vue.use(Pulldown) Vue.use(Edit) Vue.use(Export) Vue.use(Keyboard) Vue.use(Validator) // 再安装核心 Vue.use(Table) // 给 vue 实例挂载窗口对象 Vue.prototype.$XModal = VXETable.modal // 给 vue 实例挂载文件对象 Vue.prototype.$readFile = VXETable.readFile // 给 vue 实例挂载打印对象 Vue.prototype.$XPrint = VXETable.print VXETable.use(VXETablePluginElement) VXETable.use(VXETablePluginIView) VXETable.use(VXETablePluginAntd) VXETable.use(VXETablePluginVirtualTree) VXETable.use(VXETablePluginMenus) VXETable.use(VXETablePluginExportXLSX) VXETable.use(VXETablePluginExportPDF)