1 line
5.6 KiB
Plaintext
1 line
5.6 KiB
Plaintext
{"version":3,"file":"s-user-card.js","sources":["../../../../../../src/sheep/components/s-user-card/s-user-card.vue","../../../../../../uniComponent:/RDovQXBwL1dvcmsvYWRkci9hY2RyLXVpL3NyYy9zaGVlcC9jb21wb25lbnRzL3MtdXNlci1jYXJkL3MtdXNlci1jYXJkLnZ1ZQ"],"sourcesContent":["<!-- 装修用户组件:用户卡片 -->\r\n<template>\r\n <view class=\"ss-user-info-wrap ss-p-t-50\" :style=\"[bgStyle, { marginLeft: `${data.space}px` }]\">\r\n <view class=\"ss-flex ss-col-center ss-row-between ss-m-b-20\">\r\n <view class=\"left-box ss-flex ss-col-center ss-m-l-36\">\r\n <view class=\"avatar-box ss-m-r-24\">\r\n <image\r\n class=\"avatar-img\"\r\n :src=\"\r\n isLogin\r\n ? sheep.$url.cdn(userInfo.avatar)\r\n : sheep.$url.static('/static/img/shop/default_avatar.png')\r\n \"\r\n mode=\"aspectFill\"\r\n @tap=\"sheep.$router.go('/modules/mall/user/info')\"\r\n ></image>\r\n </view>\r\n <view>\r\n <view class=\"nickname-box ss-flex ss-col-center\">\r\n <view class=\"nick-name ss-m-r-20\">{{ userInfo?.nickname || nickname }}</view>\r\n </view>\r\n </view>\r\n </view>\r\n <view class=\"right-box ss-m-r-52\">\r\n <button class=\"ss-reset-button\" @tap=\"showShareModal\">\r\n <text class=\"sicon-qrcode\"></text>\r\n </button>\r\n </view>\r\n </view>\r\n\r\n <!-- 提示绑定手机号 先隐藏 yudao 需要再修改 -->\r\n <view\r\n class=\"bind-mobile-box ss-flex ss-row-between ss-col-center\"\r\n v-if=\"isLogin && !userInfo.mobile\"\r\n >\r\n <view class=\"ss-flex\">\r\n <text class=\"cicon-mobile-o\" />\r\n <view class=\"mobile-title ss-m-l-20\">点击绑定手机号确保账户安全</view>\r\n </view>\r\n <button class=\"ss-reset-button bind-btn\" @tap=\"onBind\">去绑定</button>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\n/**\r\n * 用户卡片\r\n *\r\n * @property {Number} leftSpace \t\t\t\t\t\t\t\t\t- 容器左间距\r\n * @property {Number} rightSpace \t\t\t\t\t\t\t\t\t- 容器右间距\r\n *\r\n * @property {String} avatar \t\t\t\t\t- 头像\r\n * @property {String} nickname \t\t\t\t\t- 昵称\r\n * @property {String} vip\t\t \t\t\t\t- 等级\r\n * @property {String} collectNum \t\t\t\t- 收藏数\r\n * @property {String} likeNum \t\t\t\t\t- 点赞数\r\n *\r\n *\r\n */\r\nimport { computed, reactive } from 'vue'\r\nimport sheep from '@/sheep'\r\nimport { showShareModal, showAuthModal } from '@/sheep/hooks/useModal'\r\n\r\n// 用户信息\r\nconst userInfo = computed(() => sheep.$store('user').userInfo)\r\nconsole.log('用户信息', userInfo)\r\n\r\n// 是否登录\r\nconst isLogin = computed(() => sheep.$store('user').isLogin)\r\n// 接收参数\r\nconst props = defineProps({\r\n // 装修数据\r\n data: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n // 装修样式\r\n styles: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n // 头像\r\n avatar: {\r\n type: String,\r\n default: '',\r\n },\r\n nickname: {\r\n type: String,\r\n default: '请先登录',\r\n },\r\n vip: {\r\n type: [String, Number],\r\n default: '1',\r\n },\r\n collectNum: {\r\n type: [String, Number],\r\n default: '1',\r\n },\r\n likeNum: {\r\n type: [String, Number],\r\n default: '1',\r\n },\r\n})\r\n\r\n// 设置背景样式\r\nconst bgStyle = computed(() => {\r\n // 直接从 props.styles 解构\r\n const { bgType, bgImg, bgColor } = props.styles\r\n\r\n // 根据 bgType 返回相应的样式\r\n return {\r\n background: bgType === 'img' ? `url(${bgImg}) no-repeat top center / 100% 100%` : bgColor,\r\n }\r\n})\r\n// 绑定手机号\r\nfunction onBind() {\r\n showAuthModal('changeMobile')\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n \r\n.ss-user-info-wrap {\r\n box-sizing: border-box;\r\n\r\n .avatar-box {\r\n width: 100rpx;\r\n height: 100rpx;\r\n overflow: hidden;\r\n border-radius: 50%;\r\n\r\n .avatar-img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n\r\n .nick-name {\r\n font-size: 34rpx;\r\n font-weight: 400;\r\n line-height: normal;\r\n color: #333333;\r\n }\r\n\r\n .vip-img {\r\n width: 30rpx;\r\n height: 30rpx;\r\n }\r\n\r\n .sicon-qrcode {\r\n font-size: 40rpx;\r\n }\r\n}\r\n\r\n.bind-mobile-box {\r\n box-sizing: border-box;\r\n width: 100%;\r\n height: 84rpx;\r\n padding: 0 34rpx 0 44rpx;\r\n background: #ffffff;\r\n box-shadow: 0px -8rpx 9rpx 0px rgba(#e0e0e0, 0.3);\r\n\r\n .cicon-mobile-o {\r\n font-size: 30rpx;\r\n color: #ff690d;\r\n }\r\n\r\n .mobile-title {\r\n font-size: 24rpx;\r\n font-weight: 500;\r\n color: #ff690d;\r\n }\r\n\r\n .bind-btn {\r\n width: 100rpx;\r\n height: 50rpx;\r\n font-size: 24rpx;\r\n font-weight: 500;\r\n color: #ffffff;\r\n background: #ff6100;\r\n border-radius: 25rpx;\r\n }\r\n}\r\n</style>\r\n","import Component from 'D:/App/Work/addr/acdr-ui/src/sheep/components/s-user-card/s-user-card.vue'\nwx.createComponent(Component)"],"names":["computed","sheep","showAuthModal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgEA,UAAM,WAAWA,cAAQ,SAAC,MAAMC,YAAAA,MAAM,OAAO,MAAM,EAAE,QAAQ;AAC7D,YAAQ,IAAI,QAAQ,QAAQ;AAG5B,UAAM,UAAUD,cAAQ,SAAC,MAAMC,YAAAA,MAAM,OAAO,MAAM,EAAE,OAAO;AAE3D,UAAM,QAAQ;AAmCd,UAAM,UAAUD,cAAQ,SAAC,MAAM;AAE7B,YAAM,EAAE,QAAQ,OAAO,QAAS,IAAG,MAAM;AAGzC,aAAO;AAAA,QACL,YAAY,WAAW,QAAQ,OAAO,KAAK,uCAAuC;AAAA,MACnF;AAAA,IACH,CAAC;AAED,aAAS,SAAS;AAChBE,2BAAAA,cAAc,cAAc;AAAA,IAC9B;;;;;;;;;;;;;;;;;;;;;ACpHA,GAAG,gBAAgB,SAAS;"} |