main.ts 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  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.RECORD_LIST,
  58. URL.RECORD_FRAGMENT_LIST,
  59. URL.VIEW_LIST,
  60. URL.FOLDER_TYPE_LIST,
  61. URL.FLODER_LIST,
  62. URL.MODEL_SIGN,
  63. URL.CASE_INFO,
  64. URL.PATH_LIST,
  65. URL.AUTH_PWD,
  66. '/fusion-xj/caseInquest/info',
  67. '/fusion-xj/caseExtractDetail/info',
  68. '/fusion-xj/caseInquest/downDocx',
  69. '/fusion-xj/caseExtractDetail/downDocx',
  70. '/fusion-xj/caseImg/getFfmpegImage'
  71. ]
  72. addUnsetTokenURLS(...untokenURLS);
  73. onCleanup(() => {
  74. delUnsetTokenURLS(...untokenURLS);
  75. });
  76. }
  77. },
  78. { flush: "sync" }
  79. );
  80. export default app;