main.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import Vue from 'vue';
  2. import App from './App.vue';
  3. // 路由
  4. import router from './router';
  5. // 使用echarts
  6. // import echarts from 'echarts';
  7. // Vue.prototype.$echarts = echarts;
  8. // Vuex
  9. import store from './store';
  10. // 全局组件库、组件、样式
  11. import './styles/index';
  12. // 是否启用PWA
  13. import './sw/registerServiceWorker';
  14. // 注册自定义插件
  15. import './plugins';
  16. // 调用共通js
  17. import './common';
  18. // 共通filters
  19. import * as filters from './filters';
  20. // 查看大图组件
  21. import Viewer from 'v-viewer';
  22. import 'viewerjs/dist/viewer.css';
  23. Vue.use(Viewer);
  24. // Viewer.setDefaults({
  25. // Options: {
  26. // inline: true, // 启用 inline 模式
  27. // button: true, // 显示右上角关闭按钮
  28. // navbar: true, // 显示缩略图导航
  29. // title: true, // 显示当前图片的标题
  30. // toolbar: true, // 显示工具栏
  31. // tooltip: true, // 显示缩放百分比
  32. // movable: true, // 图片是否可移动
  33. // zoomable: true, // 图片是否可缩放
  34. // rotatable: true, // 图片是否可旋转
  35. // scalable: true, // 图片是否可翻转
  36. // transition: true, // 使用 CSS3 过度
  37. // fullscreen: true, // 播放时是否全屏
  38. // keyboard: true, // 是否支持键盘
  39. // url: 'data-source', // 设置大图片的 url
  40. // },
  41. // });
  42. // 试题详情组件
  43. import QuestionDetailDialog from '@/components/common/QuestionDetailDialog';
  44. Vue.component('QuestionDetailDialog', QuestionDetailDialog);
  45. Object.entries(filters).forEach(([key, value]) => {
  46. Vue.filter(key, value);
  47. });
  48. Vue.config.productionTip = false;
  49. // 开发时是否使用数据库中的菜单,修改后需要重新登陆
  50. // if (process.env.NODE_ENV !== 'production') {
  51. // sessionStorage.MenusFromDB = false;
  52. // }
  53. sessionStorage.MenusFromDB = false;
  54. const $bus = new Vue();
  55. Object.defineProperties(Vue.prototype, {
  56. $bus: {
  57. get() {
  58. return $bus;
  59. },
  60. },
  61. });
  62. new Vue({
  63. router: router,
  64. store: store,
  65. render: (h) => h(App),
  66. }).$mount('#app');