You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
7.7 KiB

{"remainingRequest":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/linhuakun/Downloads/coderlhk/codewhy/src/views/profile/Profile.vue?vue&type=style&index=0&id=bfd43e28&scoped=true&lang=css&","dependencies":[{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/src/views/profile/Profile.vue","mtime":1610549719799},{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/css-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/vue-loader/lib/loaders/stylePostLoader.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/postcss-loader/src/index.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/codewhy/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKLnByb2ZpbGUgewogIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDMsIDIzNiwgMjM4KTsKICBoZWlnaHQ6IDEwMHZoOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm5hdi1iYXIgewogIGJhY2tncm91bmQtY29sb3I6IHJnYigxOTYsIDE1LCAxNSk7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3Nyk7Cn0KYXsKICBjb2xvcjpyZ2IoNzAsIDU5LCA1OSk7Cn0KLmluZm8tc2lnbnsKICBmb250LXNpemU6IDEwcHg7Cn0KLmFjY291bnQgewogIGRpc3BsYXk6IGZsZXg7Cn0KCi5hY2NvdW50LWl0ZW0gewogIG1hcmdpbi10b3A6NXB4OwogIHdpZHRoOiAxMDAlOwogIG1hcmdpbi1yaWdodDogMXB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7CiAgYm9yZGVyLXJhZGl1czogNXB4OwogIAp9CgouYWNjb3VudC1pdGVtOmxhc3Qtb2YtdHlwZSB7CiAgbWFyZ2luLXJpZ2h0OiAwOwp9CgouYWNjb3VudC1pdGVtIHsKICBjb2xvcjogIzY2NjsKICBmb250LXNpemU6IDEzcHg7CiAgcGFkZGluZzogMThweDsKfQoKLmFjY291bnQtaXRlbSAuYmFsYW5jZSB7CiAgZm9udC1zaXplOiAyNHB4OwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgY29sb3I6IHJlZDsKfQoKLmFjY291bnQtaW5mbyB7CiAgbWFyZ2luLXRvcDogNnB4Owp9Cgoub3JkZXItbGlzdCwKLnNlcnZpY2UtbGlzdCB7CiAgbWFyZ2luLXRvcDogMTJweDsKfQoubG9nLW91dHsKICBtYXJnaW4tdG9wOjVweDsKfQouc2V0LXVwewogIG1hcmdpbi10b3A6MTBweDsKfQoudXBsb2FkaW5newogIHdpZHRoOiA2MHB4OwogIGxlZnQ6IDEwcHg7CiAgcG9zaXRpb246IGFic29sdXRlOwogIG9wYWNpdHk6IDA7Cn0KLmF2dGFyewogIGhlaWdodDogNjBweDsKICB3aWRvd3M6IDYwcHg7CiAgICBib3JkZXItcmFkaXVzOiAzMHB4Owp9CiN0YWItY29udGVudCB7CiAgbGVmdDogMDsKICByaWdodDogMDsKICB0b3A6MzBweDsKICBib3R0b206IDQ5cHg7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBwb3NpdGlvbjogYWJzb2x1dGU7Cn0K"},{"version":3,"sources":["Profile.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2HA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"Profile.vue","sourceRoot":"src/views/profile","sourcesContent":["<template>\n <div class=\"profile\">\n <nav-bar class=\"nav-bar\"><div slot=\"center\">白酒商城</div></nav-bar>\n <!--1.单独封装一个组件: 利用slot-->\n <Scroll id=\"tab-content\"\n :data=\"[categoryData]\"\n ref=\"scroll\"\n :probe-type=\"3\">\n <user-info v-if=\"this.avatarexit\">\n <div slot=\"user-icon\" >\n <img class=\"avtar\" :src=\"this.avatar\" alt=\"未上传\" />\n <van-uploader\n class=\"uploading\"\n :after-read=\"afterRead\"\n preview-size=\"60px\"\n />\n </div>\n <div slot=\"user-nickname\">\n <div v-if=\"this.name\">{{ isLogin }}</div>\n <div v-else><a @click=\"infoLogin\">登陆</a><a>/</a><a @click=\"infoRegister\">注册</a></div>\n </div>\n <div slot=\"sign\" class=\"info-sign\">\n 个性签名:我好帅 帅帅帅\n </div>\n </user-info>\n <!--2.没有单独封装: 不同的地方太多, 需要传过多的参数-->\n <section class=\"account\">\n <div class=\"account-item\">\n <div class=\"number\">\n <span class=\"balance\">0.00</span>元\n </div>\n <div class=\"account-info\">我的余额</div>\n </div>\n <div class=\"account-item\">\n <div class=\"number\">\n <span class=\"balance\">0</span>个\n </div>\n <div class=\"account-info\">我的优惠</div>\n </div>\n <div class=\"account-item\">\n <div class=\"number\">\n <span class=\"balance\">0</span>分\n </div>\n <div class=\"account-info\">我的积分</div>\n </div>\n </section>\n <set-up class=\"set-up\"></set-up>\n <log-out class=\"log-out\"></log-out>\n </Scroll>\n </div>\n</template>\n\n<script>\nimport NavBar from \"@/components/common/navbar/NavBar\";\nimport Scroll from \"@/components/common/Scroll/Scroll\";\nimport UserInfo from \"@/views/profile/childComps/UserInfo\";\nimport LogOut from '@/views/profile/childComps/LogOut'\nimport SetUp from '@/views/profile/childComps/SetUp.vue';\nexport default {\n name: \"Profile\",\n components: {\n NavBar,\n Scroll,\n UserInfo,\n LogOut,\n SetUp,\n },\n data() {\n return {\n name: \"\",\n isLogin: \"\",\n id:'',\n url:'',\n avatar:'',\n avatarexit:true,\n isshow:true\n };\n },\n mounted(){\n\n }\n ,\n methods: {\n userLogin() {\n this.name = window.sessionStorage.getItem(\"name\");\n if (this.name) {\n this.isLogin = \"你好!\" + this.name;\n }\n },\n infoLogin() {\n this.$router.push(\"/login\");\n },\n infoRegister() {\n this.$router.push(\"/register\");\n },\n async afterRead(file) {\n \n this.url='/upload/'+this.id+'/avatar'\n // 此时可以自行将文件上传至服务器\n const formdata=new FormData();\n formdata.append('avatar',file.file)\n const res = await this.$http.post(this.url,formdata)\n this.getAvatar()\n this.avatarexit=false\n this.$nextTick(() => {\n this.avatarexit=true\n }, 100);\n \n },\n async getAvatar(){\n this.id=window.sessionStorage.getItem('userId')\n const res= await this.$http.get('/users/'+this.id+'/avatar')\n this.avatar=res.config.url\n }\n },\n created() {\n this.userLogin();\n this.getAvatar();\n },\n};\n</script>\n\n<style scoped>\n.profile {\n background-color: rgb(243, 236, 238);\n height: 100vh;\n position: relative;\n}\n\n.nav-bar {\n background-color: rgb(196, 15, 15);\n font-weight: 700;\n color: rgba(255, 255, 255, 0.877);\n}\na{\n color:rgb(70, 59, 59);\n}\n.info-sign{\n font-size: 10px;\n}\n.account {\n display: flex;\n}\n\n.account-item {\n margin-top:5px;\n width: 100%;\n margin-right: 1px;\n text-align: center;\n background-color:#fff;\n border-radius: 5px;\n \n}\n\n.account-item:last-of-type {\n margin-right: 0;\n}\n\n.account-item {\n color: #666;\n font-size: 13px;\n padding: 18px;\n}\n\n.account-item .balance {\n font-size: 24px;\n font-weight: 700;\n color: red;\n}\n\n.account-info {\n margin-top: 6px;\n}\n\n.order-list,\n.service-list {\n margin-top: 12px;\n}\n.log-out{\n margin-top:5px;\n}\n.set-up{\n margin-top:10px;\n}\n.uploading{\n width: 60px;\n left: 10px;\n position: absolute;\n opacity: 0;\n}\n.avtar{\n height: 60px;\n widows: 60px;\n border-radius: 30px;\n}\n#tab-content {\n left: 0;\n right: 0;\n top:30px;\n bottom: 49px;\n overflow: hidden;\n position: absolute;\n}\n</style>\n"]}]}