Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/H5/chongzhou-screen
10个文件已修改
2 文件已重命名
6个文件已添加
| | |
| | | module.exports = { |
| | | presets: [ |
| | | '@vue/cli-plugin-babel/preset' |
| | | ], |
| | | plugins: [ |
| | | [ |
| | | 'component', |
| | | { |
| | | libraryName: 'element-ui', |
| | | styleLibraryName: 'theme-chalk' |
| | | } |
| | | ] |
| | | ] |
| | | } |
| | |
| | | "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", |
| | | "dev": true |
| | | }, |
| | | "async-validator": { |
| | | "version": "1.8.5", |
| | | "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-1.8.5.tgz", |
| | | "integrity": "sha512-tXBM+1m056MAX0E8TL2iCjg8WvSyXu0Zc8LNtYqrVeyoL3+esHRZ4SieE9fKQyyU09uONjnMEjrNBMqT0mbvmA==", |
| | | "dev": true, |
| | | "requires": { |
| | | "babel-runtime": "6.x" |
| | | } |
| | | }, |
| | | "asynckit": { |
| | | "version": "0.4.0", |
| | | "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", |
| | | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" |
| | | }, |
| | | "at-least-node": { |
| | | "version": "1.0.0", |
| | | "resolved": "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz", |
| | |
| | | "possible-typed-array-names": "^1.0.0" |
| | | } |
| | | }, |
| | | "axios": { |
| | | "version": "1.8.4", |
| | | "resolved": "https://registry.npmmirror.com/axios/-/axios-1.8.4.tgz", |
| | | "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", |
| | | "requires": { |
| | | "follow-redirects": "^1.15.6", |
| | | "form-data": "^4.0.0", |
| | | "proxy-from-env": "^1.1.0" |
| | | } |
| | | }, |
| | | "babel-helper-vue-jsx-merge-props": { |
| | | "version": "2.0.3", |
| | | "resolved": "https://registry.npmmirror.com/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-2.0.3.tgz", |
| | | "integrity": "sha512-gsLiKK7Qrb7zYJNgiXKpXblxbV5ffSwR0f5whkPAaBAR4fhi6bwRZxX9wBlIc5M/v8CCkXUbXZL4N/nSE97cqg==", |
| | | "dev": true |
| | | }, |
| | | "babel-loader": { |
| | | "version": "8.4.1", |
| | | "resolved": "https://registry.npmmirror.com/babel-loader/-/babel-loader-8.4.1.tgz", |
| | |
| | | "loader-utils": "^2.0.4", |
| | | "make-dir": "^3.1.0", |
| | | "schema-utils": "^2.6.5" |
| | | } |
| | | }, |
| | | "babel-plugin-component": { |
| | | "version": "1.1.1", |
| | | "resolved": "https://registry.npmmirror.com/babel-plugin-component/-/babel-plugin-component-1.1.1.tgz", |
| | | "integrity": "sha512-WUw887kJf2GH80Ng/ZMctKZ511iamHNqPhd9uKo14yzisvV7Wt1EckIrb8oq/uCz3B3PpAW7Xfl7AkTLDYT6ag==", |
| | | "dev": true, |
| | | "requires": { |
| | | "@babel/helper-module-imports": "7.0.0-beta.35" |
| | | }, |
| | | "dependencies": { |
| | | "@babel/helper-module-imports": { |
| | | "version": "7.0.0-beta.35", |
| | | "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.35.tgz", |
| | | "integrity": "sha512-vaC1KyIZSuyWb3Lj277fX0pxivyHwuDU4xZsofqgYAbkDxNieMg2vuhzP5AgMweMY7fCQUMTi+BgPqTLjkxXFg==", |
| | | "dev": true, |
| | | "requires": { |
| | | "@babel/types": "7.0.0-beta.35", |
| | | "lodash": "^4.2.0" |
| | | } |
| | | }, |
| | | "@babel/types": { |
| | | "version": "7.0.0-beta.35", |
| | | "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.0.0-beta.35.tgz", |
| | | "integrity": "sha512-y9XT11CozHDgjWcTdxmhSj13rJVXpa5ZXwjjOiTedjaM0ba5ItqdS02t31EhPl7HtOWxsZkYCCUNrSfrOisA6w==", |
| | | "dev": true, |
| | | "requires": { |
| | | "esutils": "^2.0.2", |
| | | "lodash": "^4.2.0", |
| | | "to-fast-properties": "^2.0.0" |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | "babel-plugin-dynamic-import-node": { |
| | |
| | | "dev": true, |
| | | "requires": { |
| | | "@babel/helper-define-polyfill-provider": "^0.6.4" |
| | | } |
| | | }, |
| | | "babel-runtime": { |
| | | "version": "6.26.0", |
| | | "resolved": "https://registry.npmmirror.com/babel-runtime/-/babel-runtime-6.26.0.tgz", |
| | | "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", |
| | | "dev": true, |
| | | "requires": { |
| | | "core-js": "^2.4.0", |
| | | "regenerator-runtime": "^0.11.0" |
| | | }, |
| | | "dependencies": { |
| | | "core-js": { |
| | | "version": "2.6.12", |
| | | "resolved": "https://registry.npmmirror.com/core-js/-/core-js-2.6.12.tgz", |
| | | "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", |
| | | "dev": true |
| | | }, |
| | | "regenerator-runtime": { |
| | | "version": "0.11.1", |
| | | "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", |
| | | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", |
| | | "dev": true |
| | | } |
| | | } |
| | | }, |
| | | "balanced-match": { |
| | |
| | | "version": "1.0.2", |
| | | "resolved": "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", |
| | | "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", |
| | | "dev": true, |
| | | "requires": { |
| | | "es-errors": "^1.3.0", |
| | | "function-bind": "^1.1.2" |
| | |
| | | "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz", |
| | | "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", |
| | | "dev": true |
| | | }, |
| | | "combined-stream": { |
| | | "version": "1.0.8", |
| | | "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", |
| | | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", |
| | | "requires": { |
| | | "delayed-stream": "~1.0.0" |
| | | } |
| | | }, |
| | | "commander": { |
| | | "version": "2.20.3", |
| | |
| | | "object-keys": "^1.1.1" |
| | | } |
| | | }, |
| | | "delayed-stream": { |
| | | "version": "1.0.0", |
| | | "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", |
| | | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" |
| | | }, |
| | | "depd": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz", |
| | |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz", |
| | | "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", |
| | | "dev": true, |
| | | "requires": { |
| | | "call-bind-apply-helpers": "^1.0.1", |
| | | "es-errors": "^1.3.0", |
| | |
| | | "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.123.tgz", |
| | | "integrity": "sha512-refir3NlutEZqlKaBLK0tzlVLe5P2wDKS7UQt/3SpibizgsRAPOsqQC3ffw1nlv3ze5gjRQZYHoPymgVZkplFA==", |
| | | "dev": true |
| | | }, |
| | | "element-ui": { |
| | | "version": "2.15.14", |
| | | "resolved": "https://registry.npmmirror.com/element-ui/-/element-ui-2.15.14.tgz", |
| | | "integrity": "sha512-2v9fHL0ZGINotOlRIAJD5YuVB8V7WKxrE9Qy7dXhRipa035+kF7WuU/z+tEmLVPBcJ0zt8mOu1DKpWcVzBK8IA==", |
| | | "dev": true, |
| | | "requires": { |
| | | "async-validator": "~1.8.1", |
| | | "babel-helper-vue-jsx-merge-props": "^2.0.0", |
| | | "deepmerge": "^1.2.0", |
| | | "normalize-wheel": "^1.0.1", |
| | | "resize-observer-polyfill": "^1.5.0", |
| | | "throttle-debounce": "^1.0.1" |
| | | }, |
| | | "dependencies": { |
| | | "deepmerge": { |
| | | "version": "1.5.2", |
| | | "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz", |
| | | "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==", |
| | | "dev": true |
| | | } |
| | | } |
| | | }, |
| | | "emoji-regex": { |
| | | "version": "8.0.0", |
| | |
| | | "es-define-property": { |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz", |
| | | "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", |
| | | "dev": true |
| | | "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" |
| | | }, |
| | | "es-errors": { |
| | | "version": "1.3.0", |
| | | "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz", |
| | | "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", |
| | | "dev": true |
| | | "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" |
| | | }, |
| | | "es-module-lexer": { |
| | | "version": "1.6.0", |
| | |
| | | "version": "1.1.1", |
| | | "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz", |
| | | "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", |
| | | "dev": true, |
| | | "requires": { |
| | | "es-errors": "^1.3.0" |
| | | } |
| | |
| | | "version": "2.1.0", |
| | | "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", |
| | | "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", |
| | | "dev": true, |
| | | "requires": { |
| | | "es-errors": "^1.3.0", |
| | | "get-intrinsic": "^1.2.6", |
| | |
| | | "follow-redirects": { |
| | | "version": "1.15.9", |
| | | "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz", |
| | | "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", |
| | | "dev": true |
| | | "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==" |
| | | }, |
| | | "for-each": { |
| | | "version": "0.3.5", |
| | |
| | | "dev": true, |
| | | "requires": { |
| | | "is-callable": "^1.2.7" |
| | | } |
| | | }, |
| | | "form-data": { |
| | | "version": "4.0.2", |
| | | "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.2.tgz", |
| | | "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", |
| | | "requires": { |
| | | "asynckit": "^0.4.0", |
| | | "combined-stream": "^1.0.8", |
| | | "es-set-tostringtag": "^2.1.0", |
| | | "mime-types": "^2.1.12" |
| | | } |
| | | }, |
| | | "forwarded": { |
| | |
| | | "function-bind": { |
| | | "version": "1.1.2", |
| | | "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", |
| | | "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", |
| | | "dev": true |
| | | "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" |
| | | }, |
| | | "function.prototype.name": { |
| | | "version": "1.1.8", |
| | |
| | | "version": "1.3.0", |
| | | "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz", |
| | | "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", |
| | | "dev": true, |
| | | "requires": { |
| | | "call-bind-apply-helpers": "^1.0.2", |
| | | "es-define-property": "^1.0.1", |
| | |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz", |
| | | "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", |
| | | "dev": true, |
| | | "requires": { |
| | | "dunder-proto": "^1.0.1", |
| | | "es-object-atoms": "^1.0.0" |
| | |
| | | "gopd": { |
| | | "version": "1.2.0", |
| | | "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", |
| | | "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", |
| | | "dev": true |
| | | "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" |
| | | }, |
| | | "graceful-fs": { |
| | | "version": "4.2.11", |
| | |
| | | "has-symbols": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", |
| | | "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", |
| | | "dev": true |
| | | "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" |
| | | }, |
| | | "has-tostringtag": { |
| | | "version": "1.0.2", |
| | | "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz", |
| | | "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", |
| | | "dev": true, |
| | | "requires": { |
| | | "has-symbols": "^1.0.3" |
| | | } |
| | |
| | | "version": "2.0.2", |
| | | "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz", |
| | | "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", |
| | | "dev": true, |
| | | "requires": { |
| | | "function-bind": "^1.1.2" |
| | | } |
| | |
| | | "math-intrinsics": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz", |
| | | "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", |
| | | "dev": true |
| | | "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" |
| | | }, |
| | | "mdn-data": { |
| | | "version": "2.0.14", |
| | |
| | | "mime-db": { |
| | | "version": "1.52.0", |
| | | "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", |
| | | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", |
| | | "dev": true |
| | | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" |
| | | }, |
| | | "mime-types": { |
| | | "version": "2.1.35", |
| | | "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", |
| | | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", |
| | | "dev": true, |
| | | "requires": { |
| | | "mime-db": "1.52.0" |
| | | } |
| | |
| | | "version": "6.1.0", |
| | | "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-6.1.0.tgz", |
| | | "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", |
| | | "dev": true |
| | | }, |
| | | "normalize-wheel": { |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmmirror.com/normalize-wheel/-/normalize-wheel-1.0.1.tgz", |
| | | "integrity": "sha512-1OnlAPZ3zgrk8B91HyRj+eVv+kS5u+Z0SCsak6Xil/kmgEia50ga7zfkumayonZrImffAxPU/5WcyGhzetHNPA==", |
| | | "dev": true |
| | | }, |
| | | "npm-run-path": { |
| | |
| | | } |
| | | } |
| | | }, |
| | | "proxy-from-env": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", |
| | | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" |
| | | }, |
| | | "prr": { |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", |
| | |
| | | "version": "1.0.0", |
| | | "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", |
| | | "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", |
| | | "dev": true |
| | | }, |
| | | "resize-observer-polyfill": { |
| | | "version": "1.5.1", |
| | | "resolved": "https://registry.npmmirror.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", |
| | | "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", |
| | | "dev": true |
| | | }, |
| | | "resolve": { |
| | |
| | | } |
| | | } |
| | | }, |
| | | "throttle-debounce": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-1.1.0.tgz", |
| | | "integrity": "sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg==", |
| | | "dev": true |
| | | }, |
| | | "thunky": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npmmirror.com/thunky/-/thunky-1.1.0.tgz", |
| | | "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", |
| | | "dev": true |
| | | }, |
| | | "to-fast-properties": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", |
| | | "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", |
| | | "dev": true |
| | | }, |
| | | "to-regex-range": { |
| | | "version": "5.0.1", |
| | | "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", |
| | |
| | | }, |
| | | "dependencies": { |
| | | "@jiaminghi/data-view": "^2.10.0", |
| | | "axios": "^1.8.4", |
| | | "core-js": "^3.8.3", |
| | | "echarts": "^5.6.0", |
| | | "register-service-worker": "^1.7.2", |
| | |
| | | "vuex": "^3.6.2" |
| | | }, |
| | | "devDependencies": { |
| | | "@babel/preset-env": "^7.26.9", |
| | | "@vue/cli-plugin-babel": "~5.0.0", |
| | | "@vue/cli-plugin-pwa": "~5.0.0", |
| | | "@vue/cli-plugin-router": "~5.0.0", |
| | | "@vue/cli-plugin-vuex": "~5.0.0", |
| | | "@vue/cli-service": "~5.0.0", |
| | | "babel-plugin-component": "^1.1.1", |
| | | "element-ui": "^2.15.14", |
| | | "less": "^4.2.2", |
| | | "less-loader": "^8.1.1", |
| | | "vue-template-compiler": "^2.6.14" |
| | |
| | | <meta charset="utf-8"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| | | <meta name="viewport" content="width=device-width,initial-scale=1.0"> |
| | | <link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
| | | <!-- <link rel="icon" href="<%= BASE_URL %>favicon.ico"> --> |
| | | <title><%= htmlWebpackPlugin.options.title %></title> |
| | | </head> |
| | | <body> |
New file |
| | |
| | | @font-face { |
| | | font-family: 'pangmenzhengdao'; |
| | | src: url('./pangmenzhengdao.ttf'); |
| | | font-weight: normal; |
| | | font-style: normal; |
| | | } |
| | | |
| | |
| | | </div> |
| | | |
| | | <!-- 中间地图 --> |
| | | <div class="center-middle panel-item"> |
| | | <div class="map-chart"> |
| | | <Map /> |
| | | </div> |
| | | <div class="center-middle"> |
| | | <Map :data="data.mapResponses" /> |
| | | </div> |
| | | |
| | | <!-- 中间下部数据 --> |
| | |
| | | import Map from './map.vue'; |
| | | export default { |
| | | name: 'CenterPanel', |
| | | props: { |
| | | data: { |
| | | type: Object, |
| | | default: () => { } |
| | | } |
| | | }, |
| | | components: { |
| | | Map |
| | | }, |
| | |
| | | bottom: 20px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | |
| | | .panel-item { |
| | | border-radius: 10px; |
| | |
| | | } |
| | | |
| | | .center-middle { |
| | | flex: 1; |
| | | |
| | | .map-chart { |
| | | height: calc(100% - 44px); |
| | | } |
| | | position: fixed; |
| | | top: 281px; |
| | | } |
| | | |
| | | .center-bottom { |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | // import "echarts-gl"; |
| | | import mapBg from "@/assets/map/mapBg.png"; |
| | | import tooltipBg from "@/assets/map/tooltipBg.png"; |
| | | import tooltipBlue from "@/assets/map/tooltipBlue.png"; |
| | | import tooltipOrange from "@/assets/map/tooltipOrange.png"; |
| | | |
| | | export default { |
| | | name: 'Map', |
| | | props: { |
| | | data: { |
| | | type: Array, |
| | | default: () => [] |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | mapBg: null // 地图背景图片 |
| | | mapBg: null, // 地图背景图片 |
| | | // 地图标记点数据 |
| | | mapPoints: [ |
| | | { name: "点位1", value: [103.6672, 30.6333], type: "blue", symbolSize: 32 }, |
| | | { name: "点位2", value: [103.6772, 30.6533], type: "orange", symbolSize: 32 }, |
| | | { name: "点位3", value: [103.6572, 30.6433], type: "blue", symbolSize: 32 }, |
| | | { name: "点位4", value: [103.6872, 30.6633], type: "orange", symbolSize: 32 }, |
| | | { name: "点位5", value: [103.6472, 30.6233], type: "blue", symbolSize: 32 } |
| | | ] |
| | | } |
| | | }, |
| | | created() { |
| | | if (Object.keys(this.data).length > 0) { |
| | | console.log(this.data); |
| | | // this.mapPoints = this.data.mapResponses; |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.initMapBg(); |
| | | this.initMap(); |
| | | }, |
| | | methods: { |
| | | // 初始化地图背景图片 |
| | | initMapBg() { |
| | | // 创建一个 canvas 来生成背景图案 |
| | | const canvas = document.createElement('canvas'); |
| | | const ctx = canvas.getContext('2d'); |
| | | canvas.width = 8; |
| | | canvas.height = 8; |
| | | |
| | | // 设置渐变 |
| | | const gradient = ctx.createLinearGradient(0, 0, canvas.width, canvas.height); |
| | | gradient.addColorStop(0, 'rgba(0,24,106,0.8)'); |
| | | gradient.addColorStop(1, 'rgba(0,24,106,0.9)'); |
| | | |
| | | // 绘制背景 |
| | | ctx.fillStyle = gradient; |
| | | ctx.fillRect(0, 0, canvas.width, canvas.height); |
| | | |
| | | // 添加网格效果 |
| | | ctx.strokeStyle = 'rgba(0,234,255,0.1)'; |
| | | ctx.lineWidth = 0.5; |
| | | ctx.beginPath(); |
| | | ctx.moveTo(0, canvas.height / 2); |
| | | ctx.lineTo(canvas.width, canvas.height / 2); |
| | | ctx.moveTo(canvas.width / 2, 0); |
| | | ctx.lineTo(canvas.width / 2, canvas.height); |
| | | ctx.stroke(); |
| | | |
| | | // 保存为base64图片 |
| | | this.mapBg = canvas.toDataURL(); |
| | | }, |
| | | initMap() { |
| | | // json地图数据-需要根据需求下载引入对应名称文件 |
| | | let mapJson = require("@/utils/map/chongzhou.json"); |
| | | let myChart = this.$echarts.init(this.$refs.myMap); |
| | | myChart.showLoading(); |
| | |
| | | |
| | | let option = { |
| | | tooltip: { |
| | | trigger: "none", // 关闭提示框 |
| | | show: false |
| | | }, |
| | | // 设置多层级地图实现立体效果 |
| | | geo: [ |
| | | { |
| | | map: "myMap", // 使用注册的地图名称 |
| | | aspectScale: 1, // 地图长宽比 |
| | | zoom: 1, // 地图缩放比例 |
| | | top: "15%", // 距离容器顶部距离 |
| | | bottom: "10%", // 距离容器底部距离 |
| | | roam: false, // 禁用地图平移缩放 |
| | | z: 5, // 图层层级,数值大的在上层 |
| | | itemStyle: { |
| | | areaColor: "transparent", // 区域透明 |
| | | borderColor: "#00eaff", // 边框颜色 |
| | | borderWidth: 1 // 边框宽度 |
| | | }, |
| | | select: { |
| | | disabled: true // 禁用选中状态 |
| | | }, |
| | | tooltip: { |
| | | show: false, // 关闭提示框 |
| | | }, |
| | | }, |
| | | { |
| | | map: "myMap", // 第二层地图 |
| | | aspectScale: 1, |
| | | zoom: 1, |
| | | top: "16%", // 比第一层低一点 |
| | | bottom: "9%", |
| | | roam: false, |
| | | z: 4, // 层级比第一层低 |
| | | itemStyle: { |
| | | areaColor: "transparent", |
| | | borderColor: "#00eaff", |
| | | borderWidth: 1 |
| | | }, |
| | | select: { |
| | | disabled: true |
| | | }, |
| | | tooltip: { |
| | | show: false, |
| | | }, |
| | | }, |
| | | { |
| | | map: "myMap", // 第三层地图 |
| | | aspectScale: 1, |
| | | zoom: 1, |
| | | top: "17%", // 最底层 |
| | | bottom: "8%", |
| | | roam: false, |
| | | z: 3, // 最底层层级 |
| | | itemStyle: { |
| | | areaColor: "transparent", |
| | | borderColor: "#00eaff", |
| | | borderWidth: 1 |
| | | }, |
| | | select: { |
| | | disabled: true |
| | | }, |
| | | tooltip: { |
| | | show: false, |
| | | }, |
| | | }, |
| | | this.getGeoLayers(1), |
| | | this.getGeoLayers(2), |
| | | this.getGeoLayers(3) |
| | | ], |
| | | |
| | | series: [ |
| | | { |
| | | type: "map", // 地图类型 |
| | | name: "地图", // 系列名称 |
| | | selectedMode: false, // 禁用选中模式 |
| | | aspectScale: 1, // 长宽比 |
| | | zoom: 1, // 缩放比例 |
| | | roam: false, // 禁用平移缩放 |
| | | regionHeight: 2, // 三维地图的厚度 |
| | | map: "myMap", // 使用的地图 |
| | | z: 10, // 最顶层 |
| | | top: "14%", // 主图层位置 |
| | | type: "map", |
| | | name: "地图", |
| | | selectedMode: false, |
| | | aspectScale: 1, |
| | | zoom: 1, |
| | | roam: false, |
| | | regionHeight: 2, |
| | | map: "myMap", |
| | | z: 10, |
| | | top: "14%", |
| | | bottom: "11%", |
| | | viewControl: { // 视角控制 |
| | | distance: 115, // 视角距离主体的距离 |
| | | alpha: 40, // 视角绕 x 轴,即上下旋转的角度 |
| | | rotateSensitivity: [0, 0], // 禁用旋转 |
| | | beta: 0, // 视角绕 y 轴,即左右旋转的角度 |
| | | viewControl: { |
| | | distance: 115, |
| | | alpha: 40, |
| | | rotateSensitivity: [0, 0], |
| | | beta: 0 |
| | | }, |
| | | label: { // 标签样式 |
| | | normal: { |
| | | show: true, // 显示标签 |
| | | textStyle: { |
| | | color: "#fff", // 标签文字颜色 |
| | | fontSize: 16, // 文字大小 |
| | | fontWeight: "normal", // 文字粗细 |
| | | textShadowColor: "rgba(0,234,255,0.8)", // 文字阴影颜色 |
| | | textShadowBlur: 10, // 文字阴影模糊 |
| | | opacity: 1, // 文字透明度 |
| | | }, |
| | | }, |
| | | emphasis: { |
| | | color: "#fff", // 悬浮时文字颜色 |
| | | }, |
| | | label: { |
| | | show: false, |
| | | textStyle: { |
| | | color: "#fff", |
| | | fontSize: 10, |
| | | fontWeight: "normal", |
| | | opacity: 1 |
| | | } |
| | | }, |
| | | itemStyle: { // 主图层样式 |
| | | itemStyle: { |
| | | areaColor: { |
| | | image: this.mapBg, // 使用背景图片 |
| | | repeat: 'repeat' // 平铺模式 |
| | | type: 'pattern', |
| | | image: mapBg, |
| | | repeat: 'no-repeat', |
| | | imageSize: '100%', |
| | | patternSize: [815, 534], |
| | | patternPosition: [0, 0] |
| | | }, |
| | | borderColor: "#00eaff", // 边框颜色 |
| | | borderWidth: 2, // 边框宽度 |
| | | borderType: 'solid', |
| | | shadowColor: "#00eaff", // 阴影颜色 |
| | | shadowOffsetX: 0, |
| | | shadowOffsetY: 0, |
| | | shadowBlur: 20, |
| | | opacity: 1 |
| | | borderColor: "#324D6B", |
| | | borderWidth: 2, |
| | | }, |
| | | emphasis: { |
| | | disabled: true // 禁用悬浮效果 |
| | | disabled: false, |
| | | label: { |
| | | show: false, |
| | | textStyle: { |
| | | color: "#fff", |
| | | fontSize: 10, |
| | | fontWeight: "normal", |
| | | opacity: 1 |
| | | } |
| | | }, |
| | | itemStyle: { |
| | | areaColor: { |
| | | type: 'pattern', |
| | | image: this.mapBg, |
| | | repeat: 'no-repeat', |
| | | imageSize: '100%', |
| | | patternSize: [815, 534], |
| | | patternPosition: [0, 0] |
| | | }, |
| | | borderColor: "#00eaff", |
| | | borderWidth: 2, |
| | | shadowColor: "#00eaff", |
| | | shadowBlur: 25, |
| | | shadowOffsetX: 0, |
| | | shadowOffsetY: 0, |
| | | opacity: 1 |
| | | } |
| | | }, |
| | | select: { |
| | | disabled: true |
| | | }, |
| | | light: { // 光照相关的设置 |
| | | main: { // 主光源 |
| | | color: "#00eaff", // 光照颜色 |
| | | intensity: 1.2, // 增加光照强度 |
| | | shadow: true, // 是否显示阴影 |
| | | shadowQuality: "high", // 阴影质量 |
| | | light: { |
| | | main: { |
| | | color: "#00eaff", |
| | | intensity: 1.2, |
| | | shadow: true, |
| | | shadowQuality: 'ultra', |
| | | alpha: 40, |
| | | beta: 0, |
| | | beta: 0 |
| | | }, |
| | | ambient: { // 环境光 |
| | | color: "#00eaff", // 环境光颜色 |
| | | intensity: 0.3, // 减弱环境光以突出主光源 |
| | | }, |
| | | ambient: { |
| | | color: "#00eaff", |
| | | intensity: 0.3 |
| | | } |
| | | }, |
| | | tooltip: { |
| | | show: false |
| | | }, |
| | | silent: false // 禁用鼠标事件 |
| | | }, |
| | | ], |
| | | this.getMarkerSeries("blue"), |
| | | this.getMarkerSeries("orange") |
| | | ] |
| | | }; |
| | | myChart.setOption(option); |
| | | } |
| | | }, |
| | | // 生成标记点配置的方法 |
| | | getMarkerSeries(type) { |
| | | return { |
| | | name: type === "blue" ? "蓝色标记" : "橙色标记", |
| | | type: "scatter", |
| | | coordinateSystem: "geo", |
| | | geoIndex: 0, |
| | | data: this.mapPoints.filter(point => point.type === type), |
| | | symbol: `image://${type === "blue" ? tooltipBlue : tooltipOrange}`, |
| | | symbolSize: [20, 30], |
| | | symbolOffset: [0, -15], |
| | | z: 20, |
| | | tooltip: { |
| | | show: true, |
| | | trigger: 'item', |
| | | backgroundColor: 'transparent', |
| | | borderWidth: 0, |
| | | padding: [0, 0, 0, 0], |
| | | position: function (point) { |
| | | return [point[0] - 100, point[1] - 160]; |
| | | }, |
| | | formatter: function (params) { |
| | | return `<div style=" |
| | | background: url(${tooltipBg}) no-repeat center center; |
| | | background-size: 100% 100%; |
| | | width: 211px; |
| | | padding-bottom: 24px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | "> |
| | | <div style="color: #fff; font-size: 16px; margin: 21px 0;font-weight: bold;">${params.name}</div> |
| | | <div style="display: flex; justify-content: space-around; width: 100%;"> |
| | | <div style="text-align: center;"> |
| | | <div style="color: rgba(102, 255, 255, 1); font-size: 20px;margin-bottom: 8px;font-family: 'pangmenzhengdao';">99999</div> |
| | | <div style="color: #fff; font-size: 12px;">安置户数(户)</div> |
| | | </div> |
| | | <div style="text-align: center;"> |
| | | <div style="color: rgba(102, 255, 255, 1); font-size: 20px;margin-bottom: 8px;font-family: 'pangmenzhengdao';">99999</div> |
| | | <div style="color: #fff; font-size: 12px;">安置人数(人)</div> |
| | | </div> |
| | | </div> |
| | | </div>`; |
| | | } |
| | | }, |
| | | label: { |
| | | show: false |
| | | }, |
| | | emphasis: { |
| | | scale: true, |
| | | scaleSize: 1.2, |
| | | itemStyle: { |
| | | shadowBlur: 10, |
| | | shadowColor: type === "blue" ? '#00eaff' : '#ff8e3a' |
| | | } |
| | | } |
| | | }; |
| | | }, |
| | | // 生成geo层级配置的方法 |
| | | getGeoLayers(index) { |
| | | const layerConfig = { |
| | | 1: { top: "15%", bottom: "10%", borderColor: "#00A0F5", borderWidth: 1 }, |
| | | 2: { top: "16%", bottom: "9%", borderColor: "#0C93C5", borderWidth: 1 }, |
| | | 3: { top: "17%", bottom: "8%", borderColor: "#0A5C83", borderWidth: 2 } |
| | | }; |
| | | |
| | | const config = layerConfig[index]; |
| | | return { |
| | | map: "myMap", |
| | | aspectScale: 1, |
| | | zoom: 1, |
| | | roam: false, |
| | | top: config.top, |
| | | bottom: config.bottom, |
| | | z: index, |
| | | itemStyle: { |
| | | areaColor: "transparent", |
| | | borderColor: config.borderColor, |
| | | borderWidth: config.borderWidth, |
| | | ...(index === 3 ? { |
| | | shadowColor: "#00eaff", |
| | | shadowBlur: 25, |
| | | shadowOffsetX: 0, |
| | | shadowOffsetY: 0, |
| | | opacity: 1 |
| | | } : {}) |
| | | }, |
| | | emphasis: { |
| | | disabled: true |
| | | }, |
| | | select: { |
| | | disabled: true |
| | | }, |
| | | tooltip: { |
| | | show: false |
| | | }, |
| | | silent: true |
| | | }; |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .map-container { |
| | | position: relative; |
| | | width: 815px; |
| | | height: 534px; |
| | | } |
| | |
| | | import 'echarts/lib/component/legend'; |
| | | import 'echarts/lib/component/grid'; |
| | | Vue.component('v-chart', ECharts); |
| | | import './assets/font/font.css' |
| | | |
| | | Vue.prototype.$echarts = echarts |
| | | Vue.config.productionTip = false |
| | | |
| | |
| | | { |
| | | "type": "Feature", |
| | | "properties": { |
| | | "name": "崇州市", |
| | | "name": "", |
| | | "BM_Time": "2025-03-21 16:00:33", |
| | | "BM_Area": 1090686919.2168725, |
| | | "adcode": "510184000000" |
New file |
| | |
| | | import axios from 'axios' |
| | | import { |
| | | Message |
| | | } from 'element-ui' |
| | | const service = axios.create({ |
| | | target: `http://182.140.209.168:8888`, |
| | | withCredentials: false, // 当跨域请求时发送cookie |
| | | timeout: 30000, // request timeout |
| | | }) |
| | | |
| | | // 请求拦截 |
| | | service.interceptors.request.use( |
| | | config => { |
| | | const token = localStorage.getItem('token') |
| | | if (token) { |
| | | // 添加token到请求头 |
| | | config.headers['Authorization'] = token |
| | | } |
| | | if (config.method == 'get') { |
| | | if (!config.params) config.params = {}; |
| | | config.params = { |
| | | ...config.params, |
| | | } |
| | | } |
| | | if (config.method == 'post') { |
| | | if (!config.data) config.data = {}; |
| | | config.data = { |
| | | ...config.data, |
| | | } |
| | | } |
| | | return config |
| | | }, |
| | | error => { |
| | | return Promise.reject(error) |
| | | } |
| | | ) |
| | | |
| | | // 响应拦截 |
| | | service.interceptors.response.use( |
| | | response => { |
| | | if (!response) { |
| | | return Promise.reject(new Error('请求超时')) |
| | | } |
| | | const res = response; |
| | | if (res.status === 200) { |
| | | if (!res.data) { |
| | | EditionPayDialog({ |
| | | show: true |
| | | }); |
| | | return Promise.reject(new Error('暂无数据')) |
| | | } |
| | | if (res.data.code == 500) { |
| | | Message({ |
| | | message: res.data.message || 'Error', |
| | | type: 'error', |
| | | duration: 3000 |
| | | }) |
| | | return Promise.reject(new Error(res.data.message)) |
| | | } |
| | | return res.data |
| | | } else { |
| | | Message({ |
| | | message: res.message || 'Error', |
| | | type: 'error', |
| | | duration: 3000 |
| | | }) |
| | | return Promise.reject(new Error(res.message || 'Error')) |
| | | } |
| | | }, |
| | | error => { |
| | | console.log('err' + error) |
| | | Message({ |
| | | message: error.message, |
| | | type: 'error', |
| | | duration: 5000 |
| | | }) |
| | | return Promise.reject(error) |
| | | } |
| | | ) |
| | | |
| | | export default service |
| | |
| | | <div class="data-screen" :style="screenStyle"> |
| | | <header-panel /> |
| | | <left-panel /> |
| | | <center-panel /> |
| | | <center-panel v-if="!loading" :data="data" /> |
| | | <right-panel /> |
| | | </div> |
| | | </template> |
| | |
| | | import LeftPanel from '@/components/datascreen/LeftPanel.vue'; |
| | | import CenterPanel from '@/components/datascreen/CenterPanel.vue'; |
| | | import RightPanel from '@/components/datascreen/RightPanel.vue'; |
| | | import { getData } from './service'; |
| | | |
| | | export default { |
| | | name: 'DataScreen', |
| | |
| | | height: '1080px', |
| | | transform: `scale(${window.innerWidth / 1920})`, |
| | | transformOrigin: 'left top' |
| | | } |
| | | }, |
| | | data: {}, |
| | | loading: true |
| | | }; |
| | | }, |
| | | created() { |
| | | getData().then(res => { |
| | | this.data = res.data; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | mounted() { |
| | | window.addEventListener('resize', this.handleResize); |
| | |
| | | background: url('@/assets/背景色.png') no-repeat center center; |
| | | background-size: 100% 100%; |
| | | } |
| | | </style> |
| | | </style> |
New file |
| | |
| | | import request from '@/utils/request' |
| | | |
| | | // POST请求 |
| | | export function getData(data) { |
| | | return request({ |
| | | url: '/api/screen/data', |
| | | method: 'post', |
| | | data |
| | | }) |
| | | } |
| | |
| | | const { defineConfig } = require('@vue/cli-service') |
| | | module.exports = defineConfig({ |
| | | transpileDependencies: true |
| | | transpileDependencies: true, |
| | | publicPath: './', |
| | | devServer: { |
| | | proxy: { //跨域配置 |
| | | "/api": { //是自定义的本地请求时的名字 |
| | | target: `http://182.140.209.168:8888`, |
| | | changeOrigin: true, //在本地会创建一个虚拟服务端,然后发送请求的数据,并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题 |
| | | pathRewrite: { //路径重写 |
| | | "^/api": "/api" // '^/api'是一个正则表达式,表示要匹配请求的url中,全部 '/api' 转接为 '/' |
| | | } |
| | | }, |
| | | } |
| | | }, |
| | | }) |