main.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import { createSSRApp } from "vue";
  2. import App from "./App.vue";
  3. import store from "./store";
  4. import publicStore from "@/store/modules/public";
  5. // 引入全局api
  6. import api from "@/utils/api.js";
  7. // 引入全局router路由拦截
  8. import initApp from "@/utils/router/init.js";
  9. // 引入colorui组件
  10. import cuCustom from "@/colorui/components/cu-custom.vue";
  11. //配置公共方法
  12. import common from "@/common/common.js";
  13. // 引入json导出组件
  14. import JsonExcel from "vue-json-excel";
  15. // 引入微信js-sdk
  16. // import jweixin from 'weixin-js-sdk'
  17. import uviewPlus from "./uni_modules/uview-plus";
  18. // 引入ElementPlus
  19. import ElementPlus from "element-plus";
  20. import locale from "element-plus/lib/locale/lang/zh-cn"; // 中文语言
  21. import "element-plus/theme-chalk/index.css";
  22. import * as Elicons from "@element-plus/icons-vue";
  23. export function createApp() {
  24. const app = createSSRApp(App);
  25. // 挂载colorui组件
  26. app.component("cu-custom", cuCustom);
  27. // 挂载json导出
  28. app.component("downloadExcel", JsonExcel);
  29. // 挂宅icons-vue组件icon
  30. for (const name in Elicons) {
  31. app.component(name, Elicons[name]);
  32. }
  33. // 添加全局变量
  34. app.provide("$myRequest", api.myRequest);
  35. app.provide("$sendUploadFile", api.sendUploadFile);
  36. app.provide("$BASE_URL", api.BASE_URL);
  37. app.config.globalProperties.$myRequest = api.myRequest;
  38. app.config.globalProperties.$BASE_URL = api.BASE_URL;
  39. app.config.globalProperties.$websiteUrl = api.websiteUrl;
  40. // 添加全局变量 (禁止重复点击)
  41. app.config.globalProperties.$noMultipleClicks = common.noMultipleClicks;
  42. // 添加全局变量 微信js-sdk
  43. // app.config.globalProperties.$wx = jweixin
  44. // 使用element-plus
  45. app
  46. .use(ElementPlus, {
  47. locale: locale,
  48. })
  49. .use(store)
  50. .use(initApp)
  51. .use(uviewPlus);
  52. return {
  53. app,
  54. };
  55. }