main.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. import { createApp, watchEffect } from "vue";
  2. import "./style.scss";
  3. import App from "./app.vue";
  4. import Components from "bill/index";
  5. import router from "./router";
  6. import { params } from "@/env";
  7. import { addHook, addUnsetTokenURLS, delHook, delUnsetTokenURLS } from "@/api";
  8. import { currentLayout, RoutesName } from "./router";
  9. import * as URL from "@/api/constant";
  10. // import 'ant-design-vue/dist/reset.css';
  11. import "@/assets/style/global.less";
  12. const app = createApp(App);
  13. app.use(Components);
  14. app.use(router);
  15. app.mount("#app");
  16. if (import.meta.env.DEV) {
  17. // import('@/hook/notice')
  18. }
  19. addHook({
  20. before(config: any) {
  21. const isView = [
  22. RoutesName.show,
  23. RoutesName.signModel,
  24. RoutesName.error,
  25. ].includes(currentLayout.value!);
  26. const type = isView ? "view" : "edit";
  27. if (config.headers) {
  28. config.headers["page-type"] = type;
  29. config.headers["caseId"] = params.caseId;
  30. } else {
  31. config.headers = { "page-type": type, caseId: params.caseId };
  32. }
  33. },
  34. });
  35. addHook({
  36. before(config: any) {
  37. if (params.sign) {
  38. config.headers["sign"] = params.sign
  39. }
  40. },
  41. });
  42. watchEffect(
  43. (onCleanup) => {
  44. if (
  45. params.sign && [RoutesName.show, RoutesName.signModel].includes(currentLayout.value!)
  46. ) {
  47. const untokenURLS = [
  48. URL.FUSE_MODEL_LIST,
  49. URL.MODEL_LIST,
  50. URL.GET_SETTING,
  51. URL.TAGGING_LIST,
  52. URL.TAGGING_POINT_LIST,
  53. URL.TAGGING_STYLE_LIST,
  54. URL.MESASURE_LIST,
  55. URL.GUIDE_LIST,
  56. URL.GUIDE_PATH_LIST,
  57. URL.CASE_FIRE_INFO,
  58. URL.RECORD_LIST,
  59. URL.RECORD_FRAGMENT_LIST,
  60. URL.VIEW_LIST,
  61. URL.FOLDER_TYPE_LIST,
  62. URL.FLODER_LIST,
  63. URL.MODEL_SIGN,
  64. URL.CASE_INFO,
  65. URL.PATH_LIST,
  66. URL.AUTH_PWD,
  67. '/fusion/caseInquest/info',
  68. '/fusion/caseExtractDetail/info',
  69. '/fusion/caseInquest/downDocx',
  70. '/fusion/caseExtractDetail/downDocx',
  71. '/fusion/caseImg/getFfmpegImage'
  72. ]
  73. addUnsetTokenURLS(...untokenURLS);
  74. onCleanup(() => {
  75. delUnsetTokenURLS(...untokenURLS);
  76. });
  77. }
  78. },
  79. { flush: "sync" }
  80. );
  81. export default app;