48ca6771d29681e0a1a1b5f7ed5512a1.json 14 KB

1
  1. {"remainingRequest":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/babel-loader/lib/index.js!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js??ref--0-0!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/personalCenter/userAvatar.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/personalCenter/userAvatar.vue","mtime":1708395041888},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/babel.config.js","mtime":1708395041663},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/babel-loader/lib/index.js","mtime":1708395147257},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js","mtime":1708395147382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCBzdG9yZSBmcm9tICJAL3N0b3JlIjsKLy8gaW1wb3J0IHsgVnVlQ3JvcHBlciB9IGZyb20gInZ1ZS1jcm9wcGVyIjsKLy8gaW1wb3J0IHsgdXBsb2FkQXZhdGFyIH0gZnJvbSAiQC9hcGkvc3lzdGVtL3VzZXIiOwppbXBvcnQgeyBkZWJvdW5jZSB9IGZyb20gJ0AvdXRpbHMnOwpleHBvcnQgZGVmYXVsdCB7CiAgY29tcG9uZW50czogewogICAgVnVlQ3JvcHBlcjogVnVlQ3JvcHBlcgogIH0sCiAgcHJvcHM6IHsKICAgIHVzZXI6IHsKICAgICAgdHlwZTogT2JqZWN0CiAgICB9CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgLy8g5piv5ZCm5pi+56S65by55Ye65bGCCiAgICAgIG9wZW46IGZhbHNlLAogICAgICAvLyDmmK/lkKbmmL7npLpjcm9wcGVyCiAgICAgIHZpc2libGU6IGZhbHNlLAogICAgICAvLyDlvLnlh7rlsYLmoIfpopgKICAgICAgdGl0bGU6ICLkv67mlLnlpLTlg48iLAogICAgICBvcHRpb25zOiB7CiAgICAgICAgaW1nOiBzdG9yZS5nZXR0ZXJzLmF2YXRhciwKICAgICAgICAvL+ijgeWJquWbvueJh+eahOWcsOWdgAogICAgICAgIGF1dG9Dcm9wOiB0cnVlLAogICAgICAgIC8vIOaYr+WQpum7mOiupOeUn+aIkOaIquWbvuahhgogICAgICAgIGF1dG9Dcm9wV2lkdGg6IDIwMCwKICAgICAgICAvLyDpu5jorqTnlJ/miJDmiKrlm77moYblrr3luqYKICAgICAgICBhdXRvQ3JvcEhlaWdodDogMjAwLAogICAgICAgIC8vIOm7mOiupOeUn+aIkOaIquWbvuahhumrmOW6pgogICAgICAgIGZpeGVkQm94OiB0cnVlLAogICAgICAgIC8vIOWbuuWumuaIquWbvuahhuWkp+WwjyDkuI3lhYHorrjmlLnlj5gKICAgICAgICBvdXRwdXRUeXBlOiAicG5nIiAvLyDpu5jorqTnlJ/miJDmiKrlm77kuLpQTkfmoLzlvI8KICAgICAgfSwKCiAgICAgIHByZXZpZXdzOiB7fSwKICAgICAgcmVzaXplSGFuZGxlcjogbnVsbAogICAgfTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8vIOe8lui+keWktOWDjwogICAgZWRpdENyb3BwZXI6IGZ1bmN0aW9uIGVkaXRDcm9wcGVyKCkgewogICAgICB0aGlzLm9wZW4gPSB0cnVlOwogICAgfSwKICAgIC8vIOaJk+W8gOW8ueWHuuWxgue7k+adn+aXtueahOWbnuiwgwogICAgbW9kYWxPcGVuZWQ6IGZ1bmN0aW9uIG1vZGFsT3BlbmVkKCkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICB0aGlzLnZpc2libGUgPSB0cnVlOwogICAgICBpZiAoIXRoaXMucmVzaXplSGFuZGxlcikgewogICAgICAgIHRoaXMucmVzaXplSGFuZGxlciA9IGRlYm91bmNlKGZ1bmN0aW9uICgpIHsKICAgICAgICAgIF90aGlzLnJlZnJlc2goKTsKICAgICAgICB9LCAxMDApOwogICAgICB9CiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLCB0aGlzLnJlc2l6ZUhhbmRsZXIpOwogICAgfSwKICAgIC8vIOWIt+aWsOe7hOS7tgogICAgcmVmcmVzaDogZnVuY3Rpb24gcmVmcmVzaCgpIHsKICAgICAgdGhpcy4kcmVmcy5jcm9wcGVyLnJlZnJlc2goKTsKICAgIH0sCiAgICAvLyDopobnm5bpu5jorqTnmoTkuIrkvKDooYzkuLoKICAgIHJlcXVlc3RVcGxvYWQ6IGZ1bmN0aW9uIHJlcXVlc3RVcGxvYWQoKSB7fSwKICAgIC8vIOWQkeW3puaXi+i9rAogICAgcm90YXRlTGVmdDogZnVuY3Rpb24gcm90YXRlTGVmdCgpIHsKICAgICAgdGhpcy4kcmVmcy5jcm9wcGVyLnJvdGF0ZUxlZnQoKTsKICAgIH0sCiAgICAvLyDlkJHlj7Pml4vovawKICAgIHJvdGF0ZVJpZ2h0OiBmdW5jdGlvbiByb3RhdGVSaWdodCgpIHsKICAgICAgdGhpcy4kcmVmcy5jcm9wcGVyLnJvdGF0ZVJpZ2h0KCk7CiAgICB9LAogICAgLy8g5Zu+54mH57yp5pS+CiAgICBjaGFuZ2VTY2FsZTogZnVuY3Rpb24gY2hhbmdlU2NhbGUobnVtKSB7CiAgICAgIG51bSA9IG51bSB8fCAxOwogICAgICB0aGlzLiRyZWZzLmNyb3BwZXIuY2hhbmdlU2NhbGUobnVtKTsKICAgIH0sCiAgICAvLyDkuIrkvKDpooTlpITnkIYKICAgIGJlZm9yZVVwbG9hZDogZnVuY3Rpb24gYmVmb3JlVXBsb2FkKGZpbGUpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIGlmIChmaWxlLnR5cGUuaW5kZXhPZigiaW1hZ2UvIikgPT0gLTEpIHsKICAgICAgICB0aGlzLiRtb2RhbC5tc2dFcnJvcigi5paH5Lu25qC85byP6ZSZ6K+v77yM6K+35LiK5Lyg5Zu+54mH57G75Z6LLOWmgu+8mkpQR++8jFBOR+WQjue8gOeahOaWh+S7tuOAgiIpOwogICAgICB9IGVsc2UgewogICAgICAgIHZhciByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpOwogICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpOwogICAgICAgIHJlYWRlci5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICBfdGhpczIub3B0aW9ucy5pbWcgPSByZWFkZXIucmVzdWx0OwogICAgICAgIH07CiAgICAgIH0KICAgIH0sCiAgICAvLyDkuIrkvKDlm77niYcKICAgIHVwbG9hZEltZzogZnVuY3Rpb24gdXBsb2FkSW1nKCkgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKICAgICAgdGhpcy4kcmVmcy5jcm9wcGVyLmdldENyb3BCbG9iKGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgdmFyIGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7CiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCJhdmF0YXJmaWxlIiwgZGF0YSk7CiAgICAgICAgdXBsb2FkQXZhdGFyKGZvcm1EYXRhKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgX3RoaXMzLm9wZW4gPSBmYWxzZTsKICAgICAgICAgIF90aGlzMy5vcHRpb25zLmltZyA9IHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEkgKyByZXNwb25zZS5pbWdVcmw7CiAgICAgICAgICBzdG9yZS5jb21taXQoJ1NFVF9BVkFUQVInLCBfdGhpczMub3B0aW9ucy5pbWcpOwogICAgICAgICAgX3RoaXMzLiRtb2RhbC5tc2dTdWNjZXNzKCLkv67mlLnmiJDlip8iKTsKICAgICAgICAgIF90aGlzMy52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWunuaXtumihOiniAogICAgcmVhbFRpbWU6IGZ1bmN0aW9uIHJlYWxUaW1lKGRhdGEpIHsKICAgICAgdGhpcy5wcmV2aWV3cyA9IGRhdGE7CiAgICB9LAogICAgLy8g5YWz6Zet56qX5Y+jCiAgICBjbG9zZURpYWxvZzogZnVuY3Rpb24gY2xvc2VEaWFsb2coKSB7CiAgICAgIHRoaXMub3B0aW9ucy5pbWcgPSBzdG9yZS5nZXR0ZXJzLmF2YXRhcjsKICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7CiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLCB0aGlzLnJlc2l6ZUhhbmRsZXIpOwogICAgfQogIH0KfTs="},{"version":3,"names":["store","debounce","components","VueCropper","props","user","type","Object","data","open","visible","title","options","img","getters","avatar","autoCrop","autoCropWidth","autoCropHeight","fixedBox","outputType","previews","resizeHandler","methods","editCropper","modalOpened","_this","refresh","window","addEventListener","$refs","cropper","requestUpload","rotateLeft","rotateRight","changeScale","num","beforeUpload","file","_this2","indexOf","$modal","msgError","reader","FileReader","readAsDataURL","onload","result","uploadImg","_this3","getCropBlob","formData","FormData","append","uploadAvatar","then","response","process","env","VUE_APP_BASE_API","imgUrl","commit","msgSuccess","realTime","closeDialog","removeEventListener"],"sources":["src/views/personalCenter/userAvatar.vue"],"sourcesContent":["<template>\n <div>\n <div class=\"user-info-head\" @click=\"editCropper()\"><img v-bind:src=\"options.img\" title=\"点击上传头像\" class=\"img-circle img-lg\" /></div>\n <el-dialog :title=\"title\" :visible.sync=\"open\" width=\"800px\" append-to-body @opened=\"modalOpened\" @close=\"closeDialog\">\n <el-row>\n <el-col :xs=\"24\" :md=\"12\" :style=\"{height: '350px'}\">\n <vue-cropper\n ref=\"cropper\"\n :img=\"options.img\"\n :info=\"true\"\n :autoCrop=\"options.autoCrop\"\n :autoCropWidth=\"options.autoCropWidth\"\n :autoCropHeight=\"options.autoCropHeight\"\n :fixedBox=\"options.fixedBox\"\n :outputType=\"options.outputType\"\n @realTime=\"realTime\"\n v-if=\"visible\"\n />\n </el-col>\n <el-col :xs=\"24\" :md=\"12\" :style=\"{height: '350px'}\">\n <div class=\"avatar-upload-preview\">\n <img :src=\"previews.url\" :style=\"previews.img\" />\n </div>\n </el-col>\n </el-row>\n <br />\n <el-row>\n <el-col :lg=\"2\" :sm=\"3\" :xs=\"3\">\n <el-upload action=\"#\" :http-request=\"requestUpload\" :show-file-list=\"false\" :before-upload=\"beforeUpload\">\n <el-button size=\"small\">\n 选择\n <i class=\"el-icon-upload el-icon--right\"></i>\n </el-button>\n </el-upload>\n </el-col>\n <el-col :lg=\"{span: 1, offset: 2}\" :sm=\"2\" :xs=\"2\">\n <el-button icon=\"el-icon-plus\" size=\"small\" @click=\"changeScale(1)\"></el-button>\n </el-col>\n <el-col :lg=\"{span: 1, offset: 1}\" :sm=\"2\" :xs=\"2\">\n <el-button icon=\"el-icon-minus\" size=\"small\" @click=\"changeScale(-1)\"></el-button>\n </el-col>\n <el-col :lg=\"{span: 1, offset: 1}\" :sm=\"2\" :xs=\"2\">\n <el-button icon=\"el-icon-refresh-left\" size=\"small\" @click=\"rotateLeft()\"></el-button>\n </el-col>\n <el-col :lg=\"{span: 1, offset: 1}\" :sm=\"2\" :xs=\"2\">\n <el-button icon=\"el-icon-refresh-right\" size=\"small\" @click=\"rotateRight()\"></el-button>\n </el-col>\n <el-col :lg=\"{span: 2, offset: 6}\" :sm=\"2\" :xs=\"2\">\n <el-button type=\"primary\" size=\"small\" @click=\"uploadImg()\">提 交</el-button>\n </el-col>\n </el-row>\n </el-dialog>\n </div>\n</template>\n\n<script>\nimport store from \"@/store\";\n// import { VueCropper } from \"vue-cropper\";\n// import { uploadAvatar } from \"@/api/system/user\";\nimport { debounce } from '@/utils'\n\nexport default {\n components: { VueCropper },\n props: {\n user: {\n type: Object\n }\n },\n data() {\n return {\n // 是否显示弹出层\n open: false,\n // 是否显示cropper\n visible: false,\n // 弹出层标题\n title: \"修改头像\",\n options: {\n img: store.getters.avatar, //裁剪图片的地址\n autoCrop: true, // 是否默认生成截图框\n autoCropWidth: 200, // 默认生成截图框宽度\n autoCropHeight: 200, // 默认生成截图框高度\n fixedBox: true, // 固定截图框大小 不允许改变\n outputType:\"png\" // 默认生成截图为PNG格式\n },\n previews: {},\n resizeHandler: null\n };\n },\n methods: {\n // 编辑头像\n editCropper() {\n this.open = true;\n },\n // 打开弹出层结束时的回调\n modalOpened() {\n this.visible = true;\n if (!this.resizeHandler) {\n this.resizeHandler = debounce(() => {\n this.refresh()\n }, 100)\n }\n window.addEventListener(\"resize\", this.resizeHandler)\n },\n // 刷新组件\n refresh() {\n this.$refs.cropper.refresh();\n },\n // 覆盖默认的上传行为\n requestUpload() {\n },\n // 向左旋转\n rotateLeft() {\n this.$refs.cropper.rotateLeft();\n },\n // 向右旋转\n rotateRight() {\n this.$refs.cropper.rotateRight();\n },\n // 图片缩放\n changeScale(num) {\n num = num || 1;\n this.$refs.cropper.changeScale(num);\n },\n // 上传预处理\n beforeUpload(file) {\n if (file.type.indexOf(\"image/\") == -1) {\n this.$modal.msgError(\"文件格式错误,请上传图片类型,如:JPG,PNG后缀的文件。\");\n } else {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n this.options.img = reader.result;\n };\n }\n },\n // 上传图片\n uploadImg() {\n this.$refs.cropper.getCropBlob(data => {\n let formData = new FormData();\n formData.append(\"avatarfile\", data);\n uploadAvatar(formData).then(response => {\n this.open = false;\n this.options.img = process.env.VUE_APP_BASE_API + response.imgUrl;\n store.commit('SET_AVATAR', this.options.img);\n this.$modal.msgSuccess(\"修改成功\");\n this.visible = false;\n });\n });\n },\n // 实时预览\n realTime(data) {\n this.previews = data;\n },\n // 关闭窗口\n closeDialog() {\n this.options.img = store.getters.avatar\n this.visible = false;\n window.removeEventListener(\"resize\", this.resizeHandler)\n }\n }\n};\n</script>\n<style scoped lang=\"scss\">\n.user-info-head {\n position: relative;\n display: inline-block;\n height: 120px;\n}\n\n.user-info-head:hover:after {\n content: '+';\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n color: #eee;\n background: rgba(0, 0, 0, 0.5);\n font-size: 24px;\n font-style: normal;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n cursor: pointer;\n line-height: 110px;\n border-radius: 50%;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwDA,OAAAA,KAAA;AACA;AACA;AACA,SAAAC,QAAA;AAEA;EACAC,UAAA;IAAAC,UAAA,EAAAA;EAAA;EACAC,KAAA;IACAC,IAAA;MACAC,IAAA,EAAAC;IACA;EACA;EACAC,IAAA,WAAAA,KAAA;IACA;MACA;MACAC,IAAA;MACA;MACAC,OAAA;MACA;MACAC,KAAA;MACAC,OAAA;QACAC,GAAA,EAAAb,KAAA,CAAAc,OAAA,CAAAC,MAAA;QAAA;QACAC,QAAA;QAAA;QACAC,aAAA;QAAA;QACAC,cAAA;QAAA;QACAC,QAAA;QAAA;QACAC,UAAA;MACA;;MACAC,QAAA;MACAC,aAAA;IACA;EACA;EACAC,OAAA;IACA;IACAC,WAAA,WAAAA,YAAA;MACA,KAAAf,IAAA;IACA;IACA;IACAgB,WAAA,WAAAA,YAAA;MAAA,IAAAC,KAAA;MACA,KAAAhB,OAAA;MACA,UAAAY,aAAA;QACA,KAAAA,aAAA,GAAArB,QAAA;UACAyB,KAAA,CAAAC,OAAA;QACA;MACA;MACAC,MAAA,CAAAC,gBAAA,gBAAAP,aAAA;IACA;IACA;IACAK,OAAA,WAAAA,QAAA;MACA,KAAAG,KAAA,CAAAC,OAAA,CAAAJ,OAAA;IACA;IACA;IACAK,aAAA,WAAAA,cAAA,GACA;IACA;IACAC,UAAA,WAAAA,WAAA;MACA,KAAAH,KAAA,CAAAC,OAAA,CAAAE,UAAA;IACA;IACA;IACAC,WAAA,WAAAA,YAAA;MACA,KAAAJ,KAAA,CAAAC,OAAA,CAAAG,WAAA;IACA;IACA;IACAC,WAAA,WAAAA,YAAAC,GAAA;MACAA,GAAA,GAAAA,GAAA;MACA,KAAAN,KAAA,CAAAC,OAAA,CAAAI,WAAA,CAAAC,GAAA;IACA;IACA;IACAC,YAAA,WAAAA,aAAAC,IAAA;MAAA,IAAAC,MAAA;MACA,IAAAD,IAAA,CAAAhC,IAAA,CAAAkC,OAAA;QACA,KAAAC,MAAA,CAAAC,QAAA;MACA;QACA,IAAAC,MAAA,OAAAC,UAAA;QACAD,MAAA,CAAAE,aAAA,CAAAP,IAAA;QACAK,MAAA,CAAAG,MAAA;UACAP,MAAA,CAAA3B,OAAA,CAAAC,GAAA,GAAA8B,MAAA,CAAAI,MAAA;QACA;MACA;IACA;IACA;IACAC,SAAA,WAAAA,UAAA;MAAA,IAAAC,MAAA;MACA,KAAAnB,KAAA,CAAAC,OAAA,CAAAmB,WAAA,WAAA1C,IAAA;QACA,IAAA2C,QAAA,OAAAC,QAAA;QACAD,QAAA,CAAAE,MAAA,eAAA7C,IAAA;QACA8C,YAAA,CAAAH,QAAA,EAAAI,IAAA,WAAAC,QAAA;UACAP,MAAA,CAAAxC,IAAA;UACAwC,MAAA,CAAArC,OAAA,CAAAC,GAAA,GAAA4C,OAAA,CAAAC,GAAA,CAAAC,gBAAA,GAAAH,QAAA,CAAAI,MAAA;UACA5D,KAAA,CAAA6D,MAAA,eAAAZ,MAAA,CAAArC,OAAA,CAAAC,GAAA;UACAoC,MAAA,CAAAR,MAAA,CAAAqB,UAAA;UACAb,MAAA,CAAAvC,OAAA;QACA;MACA;IACA;IACA;IACAqD,QAAA,WAAAA,SAAAvD,IAAA;MACA,KAAAa,QAAA,GAAAb,IAAA;IACA;IACA;IACAwD,WAAA,WAAAA,YAAA;MACA,KAAApD,OAAA,CAAAC,GAAA,GAAAb,KAAA,CAAAc,OAAA,CAAAC,MAAA;MACA,KAAAL,OAAA;MACAkB,MAAA,CAAAqC,mBAAA,gBAAA3C,aAAA;IACA;EACA;AACA"}]}