main.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. import Vue from 'vue';
  2. import App from './App.vue';
  3. import ElementUI from 'element-ui';
  4. import Viewer from 'v-viewer';
  5. import { bootstrap } from '@/cool/core';
  6. import router from '@/router';
  7. import routes from '@/router/routes/views';
  8. import store from '@/store';
  9. import '@/mock';
  10. import '@/icons/index';
  11. import '@/filter/index';
  12. import '@/assets/css/element-variables.scss';
  13. import '@/assets/css/viewer.css';
  14. import '@/assets/css/more-panel.scss';
  15. import '@/assets/iconfont/iconfont.css';
  16. import '@/config/config';
  17. import util from '@/utils/util';
  18. Vue.prototype.$util = util;
  19. Vue.use(Viewer);
  20. Vue.use(ElementUI);
  21. Vue.config.productionTip = false;
  22. Vue.config.keyCodes = {
  23. // camelCase 不可用
  24. keyAdd: 107,//+
  25. keyMinus: 107,//-
  26. keyQ: 81,//Q
  27. keyBackspace: 8,//回退
  28. // 取而代之的是 kebab-case 且用双引号括起来
  29. "key-add": 107,
  30. "key-minus": 109,
  31. "key-q": 81,
  32. "key-backspace": 8,
  33. }
  34. const conf = {
  35. store,
  36. router,
  37. ['view-routes']: routes,
  38. ['x-crud']: {
  39. crud: {
  40. // dict: {
  41. // sort: {
  42. // prop: 'order',
  43. // order: 'sort'
  44. // }
  45. // },
  46. pagination: {
  47. props: {
  48. layout: 'total, prev, pager, next, jumper',
  49. }
  50. },
  51. dict: {
  52. // 搜索
  53. search: {
  54. keyWord: 'search' // 模糊查询的关键字
  55. },
  56. // 分页参数
  57. pagination: {
  58. page: 'page', // 页数
  59. size: 'pageSize' // 每页显示的条目
  60. }
  61. },
  62. search: {
  63. key: {
  64. placeholder: '昵称 / 手机号'
  65. }
  66. },
  67. fn: {
  68. permission(that) {
  69. // const { permission } = that.$store.state.menu;
  70. // const { add, delete: del, update } = that.service.permission || {};
  71. return {
  72. // add: permission.includes(add),
  73. // delete: permission.includes(del),
  74. // update: permission.includes(update)
  75. add: true,
  76. delete: true,
  77. update: true
  78. };
  79. }
  80. }
  81. }
  82. }
  83. };
  84. bootstrap(conf).then(({ router, store }) => {
  85. store.dispatch('appLoad');
  86. new Vue({
  87. router,
  88. store,
  89. render: h => h(App)
  90. }).$mount('#app');
  91. });