Commit 4ba681ef authored by tao.huang's avatar tao.huang

feat: 去除打包文件

parent 24347feb
{"version":3,"names":["TabBar","home","brand","integral","my","_sfc_main","data","curTabIndex","onLoad","methods","handleTabClick","_ref","index","item","common_vendor","__f__","components","wx","createPage","MiniProgramPage"],"sources":["index.vue","index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"container\">\r\n\t\t<home v-if=\"curTabIndex == 0\"></home>\n\t\t<brand v-if=\"curTabIndex == 1\"></brand>\n\t\t<integral v-if=\"curTabIndex == 2\"></integral>\n\t\t<my v-if=\"curTabIndex == 3\"></my>\r\n\t\t<TabBar @tabClick=\"handleTabClick\" />\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport TabBar from '@/components/TabBar.vue'\r\n\timport home from '@/components/main/home.vue';\n\timport brand from '@/components/main/brand.vue';\n\timport integral from '@/components/main/integral.vue';\n\timport my from '@/components/main/my.vue';\r\n\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcurTabIndex: 0\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad() {},\r\n\t\tmethods: {\r\n\t\t\thandleTabClick({\r\n\t\t\t\tindex,\r\n\t\t\t\titem\r\n\t\t\t}) {\r\n\t\t\t\tconsole.log('Tab clicked:', index, item)\r\n\t\t\t\t// 这里可以根据index或item进行相应的页面跳转或其他操作\r\n\t\t\t\tthis.data.curTabIndex = index\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\n\t\t\thome,\n\t\t\tbrand,\n\t\t\tintegral,\n\t\t\tmy\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tmin-height: 100vh;\r\n\t\tbackground-color: #f5f5f5;\r\n\r\n\t\t.content {\r\n\t\t\tpadding-bottom: 100rpx; // 为底部TabBar留出空间\r\n\t\t}\r\n\t}\r\n\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"mappings":";;;;AAWC,IAAKA,MAAA,GAAU,SAAVA,OAAA;EAAA,OAAqB;AAAA;AAC1B,IAAOC,IAAA,GAAM,SAANA,KAAA;EAAA,OAAiB;AAAA;AACxB,IAAOC,KAAA,GAAO,SAAPA,MAAA;EAAA,OAAkB;AAAA;AACzB,IAAAC,QAAA,GAAiB,SAAjBA,SAAA;EAAA,OAA4B;AAAA;AAC5B,IAAKC,EAAA,GAAM,SAANA,GAAA;EAAA,OAAiB;AAAA;AAEtB,IAAKC,SAAA,GAAU;EACdC,IAAA,WAAAA,KAAA,EAAO;IACN,OAAO;MACNC,WAAA,EAAa;IAAA;EAEd;EACDC,MAAA,WAAAA,OAAA,EAAS,CAAE;EACXC,OAAA,EAAS;IACRC,cAAA,WAAAA,eAAAC,IAAA,EAGG;MAAA,IAFFC,KAAA,GAAAD,IAAA,CAAAC,KAAA;QACAC,IAAA,GAAAF,IAAA,CAAAE,IAAA;MAEAC,aAAA,CAAAF,KAAA,CAAAG,KAAA,uCAAY,gBAAgBH,KAAA,EAAOC,IAAI;MAEvC,KAAKP,IAAA,CAAKC,WAAA,GAAcK,KAAA;IACzB;EACA;EACDI,UAAA,EAAY;IACXhB,MAAA,EAAAA,MAAA;IACAC,IAAA,EAAAA,IAAA;IACAC,KAAA,EAAAA,KAAA;IACAC,QAAA,EAAAA,QAAA;IACAC,EAAA,EAAAA;EACD;;;;;;;;;;;;;;;;;;;;;;;;ACvCFa,EAAA,CAAGC,UAAA,CAAWC,eAAe","ignoreList":[]}
\ No newline at end of file
{"version":3,"file":"assets.js","sources":["static/logo.png"],"sourcesContent":["export default \"__VITE_ASSET__46719607__\""],"names":[],"mappings":";AAAA,MAAe,aAAA;;"}
\ No newline at end of file
{"version":3,"file":"assets.js","sources":["../../../../../static/my/level.png","../../../../../static/my/edit.png"],"sourcesContent":["export default \"/static/my/level.png\"","export default \"/static/my/edit.png\""],"names":[],"mappings":";AAAA,MAAe,aAAA;ACAf,MAAe,aAAA;;;"}
\ No newline at end of file
{"version":3,"file":"My.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"My.js","sources":["components/My.vue","/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue?type=component"],"sourcesContent":["<template>\n\t<view class=\"my-container\">\n\t\t<!-- 用户信息区域 -->\n\t\t<view class=\"user-info\">\n\t\t\t<view class=\"user-header\">\n\t\t\t\t<image class=\"avatar\" :src=\"userInfo.avatar || '/static/my/avatar.png'\" mode=\"aspectFill\" />\n\t\t\t\t<view class=\"user-detail\">\n\t\t\t\t\t<text class=\"nickname\">{{ userInfo.nickname || '未登录' }}</text>\n\t\t\t\t\t<view class=\"user-level\">\n\t\t\t\t\t\t<image class=\"level-icon\" src=\"/static/my/level.png\" mode=\"aspectFit\" />\n\t\t\t\t\t\t<text class=\"level-text\">Lv.{{ userInfo.level || 1 }}</text>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"edit-btn\" @tap=\"handleEditProfile\">\n\t\t\t\t\t<image src=\"/static/my/edit.png\" mode=\"aspectFit\" />\n\t\t\t\t</view>\n\t\t\t</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script setup>\nimport { ref, onMounted } from 'vue'\n\n// 用户信息\nconst userInfo = ref({\n\tavatar: '',\n\tnickname: '',\n\tlevel: 1,\n\tpoints: 0,\n\tcoupons: 0,\n\tcollects: 0\n})\n\n// 订单数量统计\nconst orderCounts = ref({\n\tpending: 0,\n\tshipping: 0,\n\treceiving: 0,\n\tcomment: 0,\n\tafter: 0\n})\n\n// 页面跳转\nconst navigateTo = (url) => {\n\tuni.navigateTo({\n\t\turl,\n\t\tfail: (err) => {\n\t\t\tconsole.error('页面跳转失败:', err)\n\t\t\tuni.showToast({\n\t\t\t\ttitle: '页面跳转失败',\n\t\t\t\ticon: 'none'\n\t\t\t})\n\t\t}\n\t})\n}\n\n// 编辑个人资料\nconst handleEditProfile = () => {\n\tnavigateTo('/pages/user/profile')\n}\n\n// 联系客服\nconst handleContactService = () => {\n\t// #ifdef MP-WEIXIN\n\tuni.openCustomerServiceChat({\n\t\textInfo: { url: 'YOUR_CUSTOMER_SERVICE_URL' },\n\t\tcorpId: 'YOUR_CORP_ID',\n\t\tsuccess(res) {\n\t\t\tconsole.log('打开客服会话成功')\n\t\t},\n\t\tfail(err) {\n\t\t\tconsole.error('打开客服会话失败:', err)\n\t\t\tuni.showToast({\n\t\t\t\ttitle: '打开客服会话失败',\n\t\t\t\ticon: 'none'\n\t\t\t})\n\t\t}\n\t})\n\t// #endif\n\t\n\t// #ifdef H5\n\twindow.open('YOUR_CUSTOMER_SERVICE_URL', '_blank')\n\t// #endif\n}\n\n// 获取用户信息\nconst getUserInfo = async () => {\n\ttry {\n\t\t// TODO: 调用获取用户信息接口\n\t\tconst res = await uni.request({\n\t\t\turl: '/api/user/info',\n\t\t\tmethod: 'GET'\n\t\t})\n\t\tif (res.data.code === 0) {\n\t\t\tuserInfo.value = res.data.data\n\t\t}\n\t} catch (error) {\n\t\tconsole.error('获取用户信息失败:', error)\n\t\tuni.showToast({\n\t\t\ttitle: '获取用户信息失败',\n\t\t\ticon: 'none'\n\t\t})\n\t}\n}\n\n// 获取订单数量\nconst getOrderCounts = async () => {\n\ttry {\n\t\t// TODO: 调用获取订单数量接口\n\t\tconst res = await uni.request({\n\t\t\turl: '/api/order/counts',\n\t\t\tmethod: 'GET'\n\t\t})\n\t\tif (res.data.code === 0) {\n\t\t\torderCounts.value = res.data.data\n\t\t}\n\t} catch (error) {\n\t\tconsole.error('获取订单数量失败:', error)\n\t}\n}\n\n// 下拉刷新\nconst onPullDownRefresh = async () => {\n\treturn\n\ttry {\n\t\tawait Promise.all([\n\t\t\tgetUserInfo(),\n\t\t\tgetOrderCounts()\n\t\t])\n\t\tuni.stopPullDownRefresh()\n\t} catch (error) {\n\t\tconsole.error('刷新数据失败:', error)\n\t\tuni.stopPullDownRefresh()\n\t}\n}\n\n// 页面加载\nonMounted(() => {\n\t// getUserInfo()\n\t// getOrderCounts()\n})\n\n// 定义页面配置\ndefineExpose({\n\tonPullDownRefresh\n})\n</script>\n\n<style lang=\"scss\" scoped>\n\t.my-container {\n\t\tmin-height: 100vh;\n\t\tbackground-color: #f5f5f5;\n\t\tpadding-bottom: 100rpx;\n\n\t\t.user-info {\n\t\t\tbackground-color: #fff;\n\t\t\tpadding: 40rpx 30rpx;\n\t\t\tmargin-bottom: 20rpx;\n\n\t\t\t.user-header {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmargin-bottom: 40rpx;\n\n\t\t\t\t.avatar {\n\t\t\t\t\twidth: 120rpx;\n\t\t\t\t\theight: 120rpx;\n\t\t\t\t\tborder-radius: 60rpx;\n\t\t\t\t\tmargin-right: 20rpx;\n\t\t\t\t}\n\n\t\t\t\t.user-detail {\n\t\t\t\t\tflex: 1;\n\n\t\t\t\t\t.nickname {\n\t\t\t\t\t\tfont-size: 32rpx;\n\t\t\t\t\t\tfont-weight: 500;\n\t\t\t\t\t\tcolor: #333;\n\t\t\t\t\t\tmargin-bottom: 10rpx;\n\t\t\t\t\t}\n\n\t\t\t\t\t.user-level {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\talign-items: center;\n\n\t\t\t\t\t\t.level-icon {\n\t\t\t\t\t\t\twidth: 32rpx;\n\t\t\t\t\t\t\theight: 32rpx;\n\t\t\t\t\t\t\tmargin-right: 8rpx;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t.level-text {\n\t\t\t\t\t\t\tfont-size: 24rpx;\n\t\t\t\t\t\t\tcolor: #666;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t.edit-btn {\n\t\t\t\t\timage {\n\t\t\t\t\t\twidth: 40rpx;\n\t\t\t\t\t\theight: 40rpx;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.user-stats {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: space-around;\n\n\t\t\t\t.stat-item {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-direction: column;\n\t\t\t\t\talign-items: center;\n\n\t\t\t\t\t.num {\n\t\t\t\t\t\tfont-size: 36rpx;\n\t\t\t\t\t\tfont-weight: 500;\n\t\t\t\t\t\tcolor: #333;\n\t\t\t\t\t\tmargin-bottom: 8rpx;\n\t\t\t\t\t}\n\n\t\t\t\t\t.label {\n\t\t\t\t\t\tfont-size: 24rpx;\n\t\t\t\t\t\tcolor: #666;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.order-section {\n\t\t\tbackground-color: #fff;\n\t\t\tpadding: 30rpx;\n\t\t\tmargin-bottom: 20rpx;\n\n\t\t\t.section-header {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: space-between;\n\t\t\t\talign-items: center;\n\t\t\t\tmargin-bottom: 30rpx;\n\n\t\t\t\t.title {\n\t\t\t\t\tfont-size: 32rpx;\n\t\t\t\t\tfont-weight: 500;\n\t\t\t\t\tcolor: #333;\n\t\t\t\t}\n\n\t\t\t\t.more {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\talign-items: center;\n\n\t\t\t\t\ttext {\n\t\t\t\t\t\tfont-size: 24rpx;\n\t\t\t\t\t\tcolor: #666;\n\t\t\t\t\t\tmargin-right: 8rpx;\n\t\t\t\t\t}\n\n\t\t\t\t\timage {\n\t\t\t\t\t\twidth: 32rpx;\n\t\t\t\t\t\theight: 32rpx;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.order-types {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: space-between;\n\n\t\t\t\t.type-item {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-direction: column;\n\t\t\t\t\talign-items: center;\n\n\t\t\t\t\timage {\n\t\t\t\t\t\twidth: 48rpx;\n\t\t\t\t\t\theight: 48rpx;\n\t\t\t\t\t\tmargin-bottom: 12rpx;\n\t\t\t\t\t}\n\n\t\t\t\t\ttext {\n\t\t\t\t\t\tfont-size: 24rpx;\n\t\t\t\t\t\tcolor: #666;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.function-list {\n\t\t\tbackground-color: #fff;\n\t\t\tpadding: 0 30rpx;\n\n\t\t\t.function-item {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\theight: 100rpx;\n\t\t\t\tborder-bottom: 1rpx solid #f5f5f5;\n\n\t\t\t\t&:last-child {\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t}\n\n\t\t\t\timage {\n\t\t\t\t\twidth: 40rpx;\n\t\t\t\t\theight: 40rpx;\n\t\t\t\t\tmargin-right: 20rpx;\n\n\t\t\t\t\t&.arrow {\n\t\t\t\t\t\twidth: 32rpx;\n\t\t\t\t\t\theight: 32rpx;\n\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t\tmargin-left: auto;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttext {\n\t\t\t\t\tfont-size: 28rpx;\n\t\t\t\t\tcolor: #333;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.badge {\n\t\tposition: absolute;\n\t\ttop: -8rpx;\n\t\tright: -8rpx;\n\t\tbackground-color: #ff4d4f;\n\t\tcolor: #fff;\n\t\tfont-size: 20rpx;\n\t\tpadding: 2rpx 8rpx;\n\t\tborder-radius: 16rpx;\n\t\tmin-width: 32rpx;\n\t\ttext-align: center;\n\t}\n\n\t.type-item {\n\t\tposition: relative;\n\t}\n</style>\n","import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/My.vue'\nwx.createComponent(Component)"],"names":["ref","uni","onMounted"],"mappings":";;;;;;AAyBA,UAAM,WAAWA,cAAAA,IAAI;AAAA,MACpB,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,UAAU;AAAA,IACX,CAAC;AAGmBA,kBAAAA,IAAI;AAAA,MACvB,SAAS;AAAA,MACT,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS;AAAA,MACT,OAAO;AAAA,IACR,CAAC;AAGD,UAAM,aAAa,CAAC,QAAQ;AAC3BC,oBAAAA,MAAI,WAAW;AAAA,QACd;AAAA,QACA,MAAM,CAAC,QAAQ;AACdA,wBAAAA,MAAA,MAAA,SAAA,2BAAc,WAAW,GAAG;AAC5BA,wBAAAA,MAAI,UAAU;AAAA,YACb,OAAO;AAAA,YACP,MAAM;AAAA,UACV,CAAI;AAAA,QACD;AAAA,MACH,CAAE;AAAA,IACF;AAGA,UAAM,oBAAoB,MAAM;AAC/B,iBAAW,qBAAqB;AAAA,IACjC;AA+DA,UAAM,oBAAoB,YAAY;AACrC;AAAA,IAWD;AAGAC,kBAAAA,UAAU,MAAM;AAAA,IAGhB,CAAC;AAGD,aAAa;AAAA,MACZ;AAAA,IACD,CAAC;;;;;;;;;;;;;;ACjJD,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Brand.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Brand.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Brand.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Home.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Home.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Home.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"Integral.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Integral.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/Integral.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"My.js","sources":["/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/My.vue?type=component"],"sourcesContent":["import Component from '/Users/huangtao/Duiba/project/20250528_FHQ1/components/main/My.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
\ No newline at end of file
{"version":3,"file":"brand.js","sources":["pages/brand/brand.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/brand/brand.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;;;;;AACA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
{"version":3,"file":"index.js","sources":["pages/index/index.vue","pages/index/index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"container\">\r\n\t\t<Home v-if=\"curTabIndex == 0\"></Home>\r\n\t\t<Brand v-if=\"curTabIndex == 1\"></Brand>\r\n\t\t<Integral v-if=\"curTabIndex == 2\"></Integral>\r\n\t\t<My v-if=\"curTabIndex == 3\"></My>\r\n\t\t<TabBar @tabClick=\"handleTabClick\" />\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport TabBar from '@/components/TabBar.vue'\r\n\timport Home from '@/components/Home.vue';\r\n\timport Brand from '@/components/Brand.vue';\r\n\timport Integral from '@/components/Integral.vue';\r\n\timport My from '@/components/My.vue';\r\n\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcurTabIndex: 0\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad() {},\r\n\t\tmethods: {\r\n\t\t\thandleTabClick({\r\n\t\t\t\tindex,\r\n\t\t\t\titem\r\n\t\t\t}) {\r\n\t\t\t\tconsole.log('Tab clicked:', index, item)\r\n\t\t\t\t// 这里可以根据index或item进行相应的页面跳转或其他操作\r\n\t\t\t\tthis.curTabIndex = index\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tHome,\r\n\t\t\tBrand,\r\n\t\t\tIntegral,\r\n\t\t\tMy\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tmin-height: 100vh;\r\n\t\tbackground-color: #f5f5f5;\r\n\r\n\t\t.content {\r\n\t\t\tpadding-bottom: 100rpx; // 为底部TabBar留出空间\r\n\t\t}\r\n\t}\r\n\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;AAWC,MAAK,SAAU,MAAW;AAC1B,aAAa,MAAW;AACxB,MAAK,QAAS,MAAW;AACzB,MAAO,WAAU,MAAW;AAC5B,MAAO,KAAI,MAAW;AAEtB,MAAK,YAAU;AAAA,EACd,OAAO;AACN,WAAO;AAAA,MACN,aAAa;AAAA;EAEd;AAAA,EACD,SAAS;AAAA,EAAE;AAAA,EACX,SAAS;AAAA,IACR,eAAe;AAAA,MACd;AAAA,MACA;AAAA,IACD,GAAG;AACFA,oBAAA,MAAA,MAAA,OAAA,+BAAY,gBAAgB,OAAO,IAAI;AAEvC,WAAK,cAAc;AAAA,IACpB;AAAA,EACA;AAAA,EACD,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;;;;;;;;;;;;;;;;;;;;;;;;ACvCF,GAAG,WAAW,eAAe;"}
\ No newline at end of file
{"version":3,"file":"index.js","sources":["pages/index/index.vue","pages/index/index.vue?type=page"],"sourcesContent":["<template>\r\n\t<view class=\"container\">\r\n\t\t<Home v-if=\"curTabIndex == 0\"></Home>\r\n\t\t<Brand v-if=\"curTabIndex == 1\"></Brand>\r\n\t\t<Integral v-if=\"curTabIndex == 2\"></Integral>\r\n\t\t<My v-if=\"curTabIndex == 3\"></My>\r\n\t\t<TabBar @tabClick=\"handleTabClick\" />\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport TabBar from '@/components/TabBar.vue'\r\n\timport Home from '@/components/Home.vue';\r\n\timport Brand from '@/components/Brand.vue';\r\n\timport Integral from '@/components/Integral.vue';\r\n\timport My from '@/components/My.vue';\r\n\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcurTabIndex: 0,\r\n\t\t\t};\r\n\t\t},\r\n\t\tonLoad() {},\r\n\t\tmethods: {\r\n\t\t\thandleTabClick({\r\n\t\t\t\tindex,\r\n\t\t\t\titem\r\n\t\t\t}) {\r\n\t\t\t\tconsole.log('Tab clicked:', index, item)\r\n\t\t\t\t// 这里可以根据index或item进行相应的页面跳转或其他操作\r\n\t\t\t\tthis.curTabIndex = index\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tTabBar,\r\n\t\t\tHome,\r\n\t\t\tBrand,\r\n\t\t\tIntegral,\r\n\t\t\tMy\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.container {\r\n\t\tmin-height: 100vh;\r\n\t\tbackground-color: #f5f5f5;\r\n\r\n\t\t.content {\r\n\t\t\tpadding-bottom: 100rpx; // 为底部TabBar留出空间\r\n\t\t}\r\n\t}\r\n\r\n\t.content {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.logo {\r\n\t\theight: 200rpx;\r\n\t\twidth: 200rpx;\r\n\t\tmargin-top: 200rpx;\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: auto;\r\n\t\tmargin-bottom: 50rpx;\r\n\t}\r\n\r\n\t.text-area {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t}\r\n\r\n\t.title {\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #8f8f94;\r\n\t}\r\n</style>","import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;AAWC,MAAK,SAAU,MAAW;AAC1B,aAAa,MAAW;AACxB,MAAK,QAAS,MAAW;AACzB,MAAO,WAAU,MAAW;AAC5B,MAAO,KAAI,MAAW;AAEtB,MAAK,YAAU;AAAA,EACd,OAAO;AACN,WAAO;AAAA,MACN,aAAa;AAAA;EAEd;AAAA,EACD,SAAS;AAAA,EAAE;AAAA,EACX,SAAS;AAAA,IACR,eAAe;AAAA,MACd;AAAA,MACA;AAAA,IACD,GAAG;AACFA,oBAAA,MAAA,MAAA,OAAA,+BAAY,gBAAgB,OAAO,IAAI;AAEvC,WAAK,cAAc;AAAA,IACpB;AAAA,EACA;AAAA,EACD,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;;;;;;;;;;;;;;;;;;;;;;;;ACvCF,GAAG,WAAW,eAAe;"}
\ No newline at end of file
{"version":3,"file":"integral.js","sources":["pages/integral/integral.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/integral/integral.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;;;;;AACA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
{"version":3,"file":"my.js","sources":["pages/my/my.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/huangtao/Duiba/project/20250528_FHQ1/pages/my/my.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;;;;;AACA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
......@@ -6975,7 +6975,7 @@ function isConsoleWritable() {
function initRuntimeSocketService() {
const hosts = "127.0.0.1,172.16.225.99";
const port = "8090";
const id = "mp-weixin_mepcPz";
const id = "mp-weixin_uIe3wH";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();
......@@ -7928,6 +7928,7 @@ exports.f = f;
exports.index = index;
exports.n = n;
exports.o = o;
exports.onMounted = onMounted;
exports.ref = ref;
exports.resolveComponent = resolveComponent;
exports.t = t;
......
"use strict";
const common_vendor = require("../common/vendor.js");
const common_assets = require("../common/assets.js");
const _sfc_main = {
__name: "My",
setup(__props) {
setup(__props, { expose: __expose }) {
const userInfo = common_vendor.ref({
avatar: "",
nickname: "",
level: 1,
points: 0,
coupons: 0,
collects: 0
});
common_vendor.ref({
pending: 0,
shipping: 0,
receiving: 0,
comment: 0,
after: 0
});
const navigateTo = (url) => {
common_vendor.index.navigateTo({
url,
fail: (err) => {
common_vendor.index.__f__("error", "at components/My.vue:49", "页面跳转失败:", err);
common_vendor.index.showToast({
title: "页面跳转失败",
icon: "none"
});
}
});
};
const handleEditProfile = () => {
navigateTo("/pages/user/profile");
};
const onPullDownRefresh = async () => {
return;
};
common_vendor.onMounted(() => {
});
__expose({
onPullDownRefresh
});
return (_ctx, _cache) => {
return {};
return {
a: userInfo.value.avatar || "/static/my/avatar.png",
b: common_vendor.t(userInfo.value.nickname || "未登录"),
c: common_assets._imports_0,
d: common_vendor.t(userInfo.value.level || 1),
e: common_assets._imports_1,
f: common_vendor.o(handleEditProfile)
};
};
}
};
......
<view class="my-container data-v-5e0d8f88"><view class="content data-v-5e0d8f88"><text class="data-v-5e0d8f88">我的页面内容</text></view></view>
\ No newline at end of file
<view class="my-container data-v-5e0d8f88"><view class="user-info data-v-5e0d8f88"><view class="user-header data-v-5e0d8f88"><image class="avatar data-v-5e0d8f88" src="{{a}}" mode="aspectFill"/><view class="user-detail data-v-5e0d8f88"><text class="nickname data-v-5e0d8f88">{{b}}</text><view class="user-level data-v-5e0d8f88"><image class="level-icon data-v-5e0d8f88" src="{{c}}" mode="aspectFit"/><text class="level-text data-v-5e0d8f88">Lv.{{d}}</text></view></view><view class="edit-btn data-v-5e0d8f88" bindtap="{{f}}"><image class="data-v-5e0d8f88" src="{{e}}" mode="aspectFit"/></view></view></view></view>
\ No newline at end of file
......@@ -24,8 +24,158 @@
/* 透明度 */
/* 文章场景相关 */
.my-container.data-v-5e0d8f88 {
padding: 20rpx;
}
.my-container .content.data-v-5e0d8f88 {
min-height: 100vh;
background-color: #f5f5f5;
padding-bottom: 100rpx;
}
.my-container .user-info.data-v-5e0d8f88 {
background-color: #fff;
padding: 40rpx 30rpx;
margin-bottom: 20rpx;
}
.my-container .user-info .user-header.data-v-5e0d8f88 {
display: flex;
align-items: center;
margin-bottom: 40rpx;
}
.my-container .user-info .user-header .avatar.data-v-5e0d8f88 {
width: 120rpx;
height: 120rpx;
border-radius: 60rpx;
margin-right: 20rpx;
}
.my-container .user-info .user-header .user-detail.data-v-5e0d8f88 {
flex: 1;
}
.my-container .user-info .user-header .user-detail .nickname.data-v-5e0d8f88 {
font-size: 32rpx;
font-weight: 500;
color: #333;
margin-bottom: 10rpx;
}
.my-container .user-info .user-header .user-detail .user-level.data-v-5e0d8f88 {
display: flex;
align-items: center;
}
.my-container .user-info .user-header .user-detail .user-level .level-icon.data-v-5e0d8f88 {
width: 32rpx;
height: 32rpx;
margin-right: 8rpx;
}
.my-container .user-info .user-header .user-detail .user-level .level-text.data-v-5e0d8f88 {
font-size: 24rpx;
color: #666;
}
.my-container .user-info .user-header .edit-btn image.data-v-5e0d8f88 {
width: 40rpx;
height: 40rpx;
}
.my-container .user-info .user-stats.data-v-5e0d8f88 {
display: flex;
justify-content: space-around;
}
.my-container .user-info .user-stats .stat-item.data-v-5e0d8f88 {
display: flex;
flex-direction: column;
align-items: center;
}
.my-container .user-info .user-stats .stat-item .num.data-v-5e0d8f88 {
font-size: 36rpx;
font-weight: 500;
color: #333;
margin-bottom: 8rpx;
}
.my-container .user-info .user-stats .stat-item .label.data-v-5e0d8f88 {
font-size: 24rpx;
color: #666;
}
.my-container .order-section.data-v-5e0d8f88 {
background-color: #fff;
padding: 30rpx;
margin-bottom: 20rpx;
}
.my-container .order-section .section-header.data-v-5e0d8f88 {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 30rpx;
}
.my-container .order-section .section-header .title.data-v-5e0d8f88 {
font-size: 32rpx;
font-weight: 500;
color: #333;
}
.my-container .order-section .section-header .more.data-v-5e0d8f88 {
display: flex;
align-items: center;
}
.my-container .order-section .section-header .more text.data-v-5e0d8f88 {
font-size: 24rpx;
color: #666;
margin-right: 8rpx;
}
.my-container .order-section .section-header .more image.data-v-5e0d8f88 {
width: 32rpx;
height: 32rpx;
}
.my-container .order-section .order-types.data-v-5e0d8f88 {
display: flex;
justify-content: space-between;
}
.my-container .order-section .order-types .type-item.data-v-5e0d8f88 {
display: flex;
flex-direction: column;
align-items: center;
}
.my-container .order-section .order-types .type-item image.data-v-5e0d8f88 {
width: 48rpx;
height: 48rpx;
margin-bottom: 12rpx;
}
.my-container .order-section .order-types .type-item text.data-v-5e0d8f88 {
font-size: 24rpx;
color: #666;
}
.my-container .function-list.data-v-5e0d8f88 {
background-color: #fff;
padding: 0 30rpx;
}
.my-container .function-list .function-item.data-v-5e0d8f88 {
display: flex;
align-items: center;
height: 100rpx;
border-bottom: 1rpx solid #f5f5f5;
}
.my-container .function-list .function-item.data-v-5e0d8f88:last-child {
border-bottom: none;
}
.my-container .function-list .function-item image.data-v-5e0d8f88 {
width: 40rpx;
height: 40rpx;
margin-right: 20rpx;
}
.my-container .function-list .function-item image.arrow.data-v-5e0d8f88 {
width: 32rpx;
height: 32rpx;
margin-right: 0;
margin-left: auto;
}
.my-container .function-list .function-item text.data-v-5e0d8f88 {
font-size: 28rpx;
color: #333;
}
.badge.data-v-5e0d8f88 {
position: absolute;
top: -8rpx;
right: -8rpx;
background-color: #ff4d4f;
color: #fff;
font-size: 20rpx;
padding: 2rpx 8rpx;
border-radius: 16rpx;
min-width: 32rpx;
text-align: center;
}
.type-item.data-v-5e0d8f88 {
position: relative;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Brand",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-6f8ffbeb"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Brand.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="brand-container data-v-6f8ffbeb"><view class="content data-v-6f8ffbeb"><text class="data-v-6f8ffbeb">品牌故事内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.brand-container.data-v-6f8ffbeb {
padding: 20rpx;
}
.brand-container .content.data-v-6f8ffbeb {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Home",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-e2af6427"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Home.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="home-container data-v-e2af6427"><view class="content data-v-e2af6427"><text class="data-v-e2af6427">首页内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.home-container.data-v-e2af6427 {
padding: 20rpx;
}
.home-container .content.data-v-e2af6427 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "Integral",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-3b5415d6"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/Integral.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="integral-container data-v-3b5415d6"><view class="content data-v-3b5415d6"><text class="data-v-3b5415d6">积分服务内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.integral-container.data-v-3b5415d6 {
padding: 20rpx;
}
.integral-container .content.data-v-3b5415d6 {
padding-bottom: 100rpx;
}
\ No newline at end of file
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {
__name: "My",
setup(__props) {
return (_ctx, _cache) => {
return {};
};
}
};
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-fefbaedb"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/main/My.js.map
{
"component": true,
"usingComponents": {}
}
\ No newline at end of file
<view class="my-container data-v-fefbaedb"><view class="content data-v-fefbaedb"><text class="data-v-fefbaedb">我的页面内容</text></view></view>
\ No newline at end of file
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.my-container.data-v-fefbaedb {
padding: 20rpx;
}
.my-container .content.data-v-fefbaedb {
padding-bottom: 100rpx;
}
\ No newline at end of file
{
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
"projectname": "20250528_FHQ1",
"setting": {
"compileHotReLoad": true
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment