view.html 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width,initial-scale=1.0">
  7. <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
  8. <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
  9. <META HTTP-EQUIV="Expires" CONTENT="0">
  10. <link rel="icon" href="/DataV/favicon.ico">
  11. <script src="/DataV/components.js"></script>
  12. <script src="/DataV/config.js"></script>
  13. <script src="/DataV/index.js"></script>
  14. <script src="/DataV/view.js"></script>
  15. <link rel="stylesheet" href="/DataV/cdn/iconfont/iconfont.css">
  16. <link rel="stylesheet" href="/DataV/cdn/animate/3.5.1/animate.css">
  17. <link rel="stylesheet" href="/DataV/cdn/element-plus/2.3.3/index.css">
  18. <link rel="stylesheet" href="/DataV/cdn/avue/3.2.16/index.css">
  19. <link rel="stylesheet" href="/DataV/lib/style.css">
  20. <script src="./cdn/qrious.min.js"></script>
  21. <script src="./cdn/jquery.min.js"></script>
  22. <script src="/DataV/cdn/echarts/5.4.0/echarts.min.js"></script>
  23. <script src="/DataV/cdn/echarts-wordcloud.min.js"></script>
  24. <script src="/DataV/cdn/echarts-gl.min.js"></script>
  25. <script src="/DataV/cdn/vue/3.2.47/vue.global.min.js" charset="utf-8"></script>
  26. <script src="/DataV/cdn/axios/1.3.6/axios.min.js" charset="utf-8"></script>
  27. <script src="/DataV/cdn/element-plus/2.3.3/index.full.min.js"></script>
  28. <script src="/DataV/cdn/avue/3.2.16/avue.min.js"></script>
  29. <script src="https://cdn.staticfile.org/FileSaver.js/2014-11-29/FileSaver.min.js"></script>
  30. <script src="https://cdn.staticfile.org/xlsx/0.18.2/xlsx.full.min.js"></script>
  31. <script src="/DataV/lib/index.umd.js?v=222"></script>
  32. <title>JNPF数据大屏</title>
  33. <style>
  34. * {
  35. padding: 0;
  36. margin: 0;
  37. }
  38. body,
  39. html,
  40. #app {
  41. height: 100%;
  42. }
  43. </style>
  44. <script>
  45. function GetQueryString(name) {
  46. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
  47. var r = window.location.search.substr(1).match(reg);
  48. if (r != null) return unescape(r[2]); return null;
  49. }
  50. function computedUrl (baseUri, imgUri, staticUri = '/DataV') {
  51. if (/^(http|https):\/\/([\w.]+\/?)\S*/.test(imgUri)) {
  52. return imgUri;
  53. }
  54. if (/^(data)\S*/.test(imgUri)) {
  55. return imgUri;
  56. }
  57. if (/^\/(DataV)\S*/.test(imgUri)) {
  58. return imgUri;
  59. }
  60. if (/^\/(img)\S*/.test(imgUri)) {
  61. return staticUri + imgUri;
  62. }
  63. if (/^\/(api)\S*/.test(imgUri)) {
  64. return baseUri + imgUri;
  65. }
  66. if (/^\/(dev)\S*/.test(imgUri)) {
  67. return imgUri;
  68. }
  69. return imgUri;
  70. }
  71. </script>
  72. </head>
  73. <body>
  74. <div id="app">
  75. <avue-data :id="id" :option="option"></avue-data>
  76. </div>
  77. <script>
  78. var token = GetQueryString('token')
  79. if (token) {
  80. localStorage.setItem('token', token)
  81. localStorage.setItem('Authorization', token)
  82. }
  83. axios.interceptors.request.use(function (config) {
  84. // 在发送请求之前做些什么
  85. if (GetQueryString('isDev')) config.url = '/dev' + config.url;
  86. config.headers['Authorization'] = token
  87. return config
  88. }, function (error) {
  89. // 对请求错误做些什么
  90. return Promise.reject(error);
  91. });
  92. var app = Vue.createApp({
  93. data() {
  94. return {
  95. id: GetQueryString('id'),
  96. option: option
  97. }
  98. },
  99. methods: {
  100. },
  101. })
  102. app.config.globalProperties.computedImgUrl = (imgUri) => {
  103. return computedUrl(GetQueryString('isDev')?"/dev":'' , imgUri, )
  104. };
  105. app.use(ElementPlus)
  106. app.use(AVUE, { axios })
  107. app.use(AvueData, { app })
  108. app.mount('#app')
  109. </script>
  110. </body>
  111. </html>