main.ts 2.2 KB

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