Browse Source

'只差几个接口了'

hfll
hflllll 8 months ago
parent
commit
534ae52c0a
164 changed files with 4140 additions and 5345 deletions
  1. +4
    -15
      App.vue
  2. +2
    -1
      api/modules/activity.js
  3. +11
    -0
      api/modules/community.js
  4. +19
    -3
      api/modules/config.js
  5. +2
    -1
      api/modules/shop.js
  6. +14
    -9
      pages.json
  7. +171
    -53
      pages/components/shop/ShopContent.vue
  8. +165
    -128
      pages/index/activity.vue
  9. +39
    -2
      stores/index.js
  10. +39
    -30
      subPages/community/publishPost.vue
  11. +66
    -70
      subPages/index/activityCalendar.vue
  12. +10
    -1
      subPages/index/activityDetail.vue
  13. +44
    -66
      subPages/my/activityCheckin.vue
  14. +15
    -37
      subPages/my/checkinCode.vue
  15. +17
    -22
      subPages/my/myActivityDetail.vue
  16. +1
    -1
      subPages/my/myProfile.vue
  17. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  18. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  19. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  20. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/HomePageNav.js.map
  21. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/RecommendedActivities.js.map
  22. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerFeatures.js.map
  23. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerHeader.js.map
  24. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerRanking.js.map
  25. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/shop/PointsCard.js.map
  26. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/shop/ShopContent.js.map
  27. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/activity.js.map
  28. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/community.js.map
  29. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  30. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/my.js.map
  31. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/shop.js.map
  32. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/community/publishPost.js.map
  33. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/activityCalendar.js.map
  34. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/activityDetail.js.map
  35. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/announcement.js.map
  36. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/announcementDetail.js.map
  37. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/components/SignUpForm.js.map
  38. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/organizationIntroduction.js.map
  39. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/ranking.js.map
  40. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/volunteerApply.js.map
  41. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/login/login.js.map
  42. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/login/userInfo.js.map
  43. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/activityCheckin.js.map
  44. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/activityFavorites.js.map
  45. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/checkinCode.js.map
  46. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/exchangeDetail.js.map
  47. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/exchangeRecord.js.map
  48. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myActivityDetail.js.map
  49. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myProfile.js.map
  50. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myRegistrations.js.map
  51. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/productFavorites.js.map
  52. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/shop/goodsDetail.js.map
  53. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/subPages/shop/pointsDetail.js.map
  54. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-action-sheet/components/uv-action-sheet/uv-action-sheet.js.map
  55. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.js.map
  56. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.js.map
  57. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.js.map
  58. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-form/components/uv-form-item/uv-form-item.js.map
  59. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.js.map
  60. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.js.map
  61. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.js.map
  62. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.js.map
  63. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-overlay/components/uv-overlay/uv-overlay.js.map
  64. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-picker/components/uv-picker/uv-picker.js.map
  65. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-popup/components/uv-popup/uv-popup.js.map
  66. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.js.map
  67. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom.js.map
  68. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-search/components/uv-search/uv-search.js.map
  69. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar.js.map
  70. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.js.map
  71. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.js.map
  72. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.js.map
  73. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.js.map
  74. +1
    -1
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar.js.map
  75. +28
    -23
      unpackage/dist/dev/mp-weixin/common/main.js
  76. +2
    -2
      unpackage/dist/dev/mp-weixin/common/runtime.js
  77. +2079
    -2261
      unpackage/dist/dev/mp-weixin/common/vendor.js
  78. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/components/HomePageNav.js
  79. +5
    -5
      unpackage/dist/dev/mp-weixin/pages/components/index/RecommendedActivities.js
  80. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerFeatures.js
  81. +5
    -5
      unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerHeader.js
  82. +2
    -2
      unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerRanking.js
  83. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/components/shop/PointsCard.js
  84. +161
    -67
      unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.js
  85. +0
    -1
      unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.json
  86. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.wxml
  87. +49
    -1
      unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.wxss
  88. +167
    -107
      unpackage/dist/dev/mp-weixin/pages/index/activity.js
  89. +2
    -1
      unpackage/dist/dev/mp-weixin/pages/index/activity.json
  90. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/index/activity.wxml
  91. +38
    -9
      unpackage/dist/dev/mp-weixin/pages/index/activity.wxss
  92. +4
    -4
      unpackage/dist/dev/mp-weixin/pages/index/community.js
  93. +1
    -0
      unpackage/dist/dev/mp-weixin/pages/index/community.json
  94. +1
    -1
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  95. +1
    -0
      unpackage/dist/dev/mp-weixin/pages/index/index.json
  96. +4
    -4
      unpackage/dist/dev/mp-weixin/pages/index/my.js
  97. +3
    -3
      unpackage/dist/dev/mp-weixin/pages/index/shop.js
  98. +1
    -0
      unpackage/dist/dev/mp-weixin/project.config.json
  99. +94
    -43
      unpackage/dist/dev/mp-weixin/subPages/community/publishPost.js
  100. +1
    -1
      unpackage/dist/dev/mp-weixin/subPages/community/publishPost.wxml

+ 4
- 15
App.vue View File

@ -1,23 +1,12 @@
<script>
export default {
onLaunch: function() {
console.log('App Launch')
//
this.$store.dispatch('getConfig')
//
this.$store.dispatch('getCareer')
//
this.$store.dispatch('getQualification')
async onLaunch() {
//
await this.$store.dispatch('initData')
console.log('配置数据初始化完成')
},
onShow: function() {
console.log('App Show')
if (!uni.getStorageSync('token')) {
uni.reLaunch({
url: '/subPages/login/login'
})
// return
}
},
onHide: function() {
console.log('App Hide')


+ 2
- 1
api/modules/activity.js View File

@ -44,7 +44,8 @@ export default {
url: '/activity/queryActivityList',
method: 'GET',
data,
noToken: true
noToken: true,
showLoading: true
})
},


+ 11
- 0
api/modules/community.js View File

@ -10,5 +10,16 @@ export default {
showLoading: true,
noToken: true
})
},
// 社区- 上传帖子
async addPost(data) {
return request({
url: '/comment/addPost',
method: 'POST',
data,
showLoading: true,
// noToken: true
})
}
}

+ 19
- 3
api/modules/config.js View File

@ -5,7 +5,6 @@ export default {
return request({
url: '/config/queryCareerList',
method: 'GET',
showLoading: true,
noToken: true
})
},
@ -14,7 +13,6 @@ export default {
return request({
url: '/config/queryConfigList',
method: 'GET',
showLoading: true,
noToken: true
})
},
@ -23,8 +21,26 @@ export default {
return request({
url: '/config/queryQualificationList',
method: 'GET',
showLoading: true,
noToken: true
})
},
// 系统配置- 查询活动分类列表
async queryCategoryActivityList() {
return request({
url: '/config/queryCategoryActivityList',
method: 'GET',
noToken: true
})
},
// 系统配置- 查询商品分类列表
async queryCategoryGoodsList() {
return request({
url: '/config/queryCategoryGoodsList',
method: 'GET',
noToken: true
})
},
}

+ 2
- 1
api/modules/shop.js View File

@ -46,7 +46,8 @@ export default {
url: '/goods/queryGoodsList',
method: 'GET',
data,
noToken: true
noToken: true,
showLoading: true
})
}
}

+ 14
- 9
pages.json View File

@ -4,7 +4,8 @@
"path": "pages/index/index",
"style": {
//
"navigationStyle": "custom"
"navigationStyle": "custom",
"enablePullDownRefresh": true
}
},
{
@ -17,13 +18,15 @@
{
"path": "pages/index/activity",
"style": {
"navigationStyle": "custom"
"navigationStyle": "custom",
"enablePullDownRefresh": true
}
},
{
"path": "pages/index/community",
"style": {
"navigationBarTitleText": "社区"
"navigationBarTitleText": "社区",
"enablePullDownRefresh": true
// "navigationStyle": "custom"
}
},
@ -54,9 +57,7 @@
{
"path": "login/userInfo",
"style": {
"navigationBarTitleText": "用户信息",
//
"navigationBarBackButtonHidden": true
}
},
@ -87,7 +88,8 @@
{
"path": "index/activityCalendar",
"style": {
"navigationBarTitleText": "活动日历"
"navigationBarTitleText": "活动日历",
"enablePullDownRefresh": true
}
},
{
@ -155,7 +157,8 @@
"path": "my/exchangeDetail",
"style": {
"navigationBarTitleText": "商品详情",
"enableBackButton": true
"enableBackButton": true,
"enablePullDownRefresh": true
}
},
{
@ -163,14 +166,16 @@
"style": {
// "navigationStyle": "custom",
"navigationBarTitleText": "商品收藏",
"enableBackButton": true
"enableBackButton": true,
"enablePullDownRefresh": true
}
},
{
"path": "my/activityCheckin",
"style": {
// "navigationStyle": "custom"
"navigationBarTitleText": "活动签到"
"navigationBarTitleText": "活动签到",
"enablePullDownRefresh": true
}
},
{


+ 171
- 53
pages/components/shop/ShopContent.vue View File

@ -3,7 +3,7 @@
<!-- 搜索框 -->
<view class="search-container">
<uv-search
v-model="searchValue"
v-model="title"
placeholder="搜索商品名"
:show-action="false"
bg-color="#f3f7f8"
@ -11,23 +11,60 @@
height="40"
margin="10rpx"
@search="onSearch"
@clickIcon="onSearch"
@clear="onSearch"
></uv-search>
</view>
<!-- Tab栏 -->
<view class="tab-container">
<uv-tabs
:list="tabList"
:current="currentTab"
@change="onTabChange"
active-color="#218CDD"
inactive-color="#999"
line-color="#218CDD"
:line-width="40"
:line-height="4"
font-size="26"
height="80"
></uv-tabs>
<scroll-view scroll-x="true" class="tab-scroll">
<view class="tab-list">
<!-- 固定的前三个Tab -->
<view
class="tab-item"
:class="{ active: currentTab === 0 }"
@click="onTabClick(0, '全部')"
>
<text class="tab-text">全部</text>
</view>
<view
class="tab-item sort-tab"
:class="{ active: currentTab === 1 }"
@click="onTabClick(1, '兑换积分')"
>
<text class="tab-text">兑换积分</text>
<view class="sort-arrows">
<view class="arrow up" :class="{ active: sortType === 'points_asc' }"></view>
<view class="arrow down" :class="{ active: sortType === 'points_desc' }"></view>
</view>
</view>
<view
class="tab-item sort-tab"
:class="{ active: currentTab === 2 }"
@click="onTabClick(2, '兑换量')"
>
<text class="tab-text">兑换量</text>
<view class="sort-arrows">
<view class="arrow up" :class="{ active: sortType === 'exchange_asc' }"></view>
<view class="arrow down" :class="{ active: sortType === 'exchange_desc' }"></view>
</view>
</view>
<!-- 从store获取的商品分类Tab -->
<view
v-for="(category, index) in categoryGoodsList"
:key="category.id"
class="tab-item"
:class="{ active: currentTab === index + 3 }"
@click="onTabClick(index + 3, category.title, category.id)"
>
<text class="tab-text">{{ category.title }}</text>
</view>
</view>
</scroll-view>
</view>
<!-- 商品列表 -->
@ -72,61 +109,70 @@ export default {
name: 'ShopContent',
data() {
return {
searchValue: '',
// searchValue: '',
currentTab: 0,
pageNo: 1,
pageSize: 10,
tabList: [
{ name: '全部' },
{ name: '积分兑换' },
{ name: '兑换量' },
{ name: '女装' },
{ name: '母婴' },
{ name: '水果' },
{ name: '竹制品' }
],
title: '',
sortType: '', // points_asc, points_desc, exchange_asc, exchange_desc
goodsList: [],
buttonStyle: {
width: '128rpx',
height: '44rpx',
borderRadius: '28rpx',
fontSize: '22rpx'
}
},
//
extraParams : {}
}
},
computed: {
// filteredGoodsList() {
// let list = this.goodsList
// //
// if (this.searchValue) {
// list = list.filter(item =>
// item.name.toLowerCase().includes(this.searchValue.toLowerCase())
// )
// }
// // tab
// const currentTabName = this.tabList[this.currentTab].name
// if (currentTabName !== '') {
// if (currentTabName === '') {
// //
// list = [...list].sort((a, b) => b.exchangeCount - a.exchangeCount)
// } else {
// //
// list = list.filter(item => item.category === currentTabName)
// }
// }
// return list
// }
// store
categoryGoodsList() {
return this.$store.state.categoryGoodsList || []
}
},
methods: {
onSearch(value) {
console.log('搜索:', value)
async onSearch(value) {
if (value) this.title = value
this.initData()
await this.getGoodsList()
},
onTabChange(index) {
async onTabClick(index, tabName, categoryId = null) {
this.currentTab = index
this.extraParams = {} //
if (index === 0) {
// Tab
console.log('点击了全部Tab')
} else if (index === 1) {
// Tab -
if (this.sortType === 'points_asc') {
this.sortType = 'points_desc' //
this.extraParams['price'] = 0
} else {
this.sortType = 'points_asc' //
this.extraParams['price'] = 1
}
console.log('点击了兑换积分Tab,排序类型:', this.sortType)
} else if (index === 2) {
// Tab -
if (this.sortType === 'exchange_asc') {
this.sortType = 'exchange_desc' //
this.extraParams['sales'] = 0
} else {
this.sortType = 'exchange_asc' //
this.extraParams['sales'] = 1
}
console.log('点击了兑换量Tab,排序类型:', this.sortType)
} else {
// Tab
console.log('点击了商品分类Tab:', tabName, '分类ID:', categoryId)
this.extraParams['categoryId'] = categoryId
}
this.initData()
await this.getGoodsList()
},
onGoodsClick(item) {
@ -156,7 +202,9 @@ export default {
// API
const res = await this.$api.shop.queryGoodsList({
pageNo: this.pageNo,
pageSize: this.pageSize
pageSize: this.pageSize,
title: this.title,
...this.extraParams
})
if (res.result.records.length) {
@ -175,6 +223,15 @@ export default {
this.pageNo = 1
this.goodsList = []
}
},
async mounted() {
// store
if (this.categoryGoodsList.length === 0) {
await this.$store.dispatch('getCategoryGoodsList')
}
//
// this.getGoodsList()
}
}
</script>
@ -198,8 +255,69 @@ export default {
z-index: 999;
top: 90rpx;
background: #ffffff;
padding: 0 30rpx;
border-bottom: 1rpx solid #f0f0f0;
.tab-scroll {
white-space: nowrap;
.tab-list {
display: flex;
padding: 0 30rpx;
.tab-item {
flex-shrink: 0;
display: flex;
align-items: center;
padding: 24rpx 32rpx;
margin-right: 16rpx;
border-radius: 32rpx;
background: #f8f9fa;
transition: all 0.3s ease;
.tab-text {
font-size: 28rpx;
color: #666666;
font-weight: 500;
}
&.active {
background: #218CDD;
.tab-text {
color: #ffffff;
}
.sort-arrows .arrow.active {
color: #ffffff;
}
}
&.sort-tab {
.sort-arrows {
margin-left: 8rpx;
display: flex;
flex-direction: column;
align-items: center;
.arrow {
font-size: 16rpx;
color: #cccccc;
line-height: 1;
transition: color 0.3s ease;
&.up {
margin-bottom: 2rpx;
}
&.active {
color: rgb(64, 64, 64);
}
}
}
}
}
}
}
}
.goods-container {


+ 165
- 128
pages/index/activity.vue View File

@ -3,8 +3,7 @@
<!-- 搜索栏和一级Tab合并容器 -->
<view class="search-section">
<view class="search-bar">
<uv-icon name="search" size="18" color="#999"></uv-icon>
<input type="text" placeholder="搜索活动名称" class="search-input" v-model="searchKeyword" />
<uv-search placeholder="请输入搜索内容" v-model="params.title" @search="handleSearch" @clear="handleSearch" @clickIcon="handleSearch" :showAction="false" ></uv-search>
</view>
<!-- 一级Tab当前活动/往期活动 移到搜索容器内 -->
@ -26,26 +25,41 @@
</view>
</view>
<!-- 二级Tab使用uv-tabs组件 -->
<!-- 二级Tab自定义Tab组件 -->
<view class="secondary-tabs">
<uv-tabs
:list="secondaryTabs"
:current="secondaryActiveIndex"
@change="switchSecondaryTab"
lineColor="#007AFF"
activeColor="#007AFF"
inactiveColor="#666"
:lineWidth="30"
:lineHeight="3"
itemStyle="padding: 10px 20px;"
></uv-tabs>
<scroll-view scroll-x="true" class="tab-scroll">
<view class="tab-list">
<!-- 全部Tab -->
<view
class="tab-item"
:class="{ active: secondaryActiveIndex === 0 }"
@click="switchSecondaryTab(0, '全部')"
>
<text class="tab-text">全部</text>
</view>
<!-- 从store获取的活动分类Tab -->
<view
v-for="(category, index) in categoryActivityList"
:key="category.id"
class="tab-item"
:class="{ active: secondaryActiveIndex === index + 1 }"
@click="switchSecondaryTab(index + 1, category.title, category.id)"
>
<text class="tab-text">{{ category.title }}</text>
</view>
<!-- 动画下划线 -->
<!-- <view class="tab-line" :style="lineStyle"></view> -->
</view>
</scroll-view>
</view>
<!-- 活动列表 -->
<view class="activity-list">
<view
class="activity-item"
v-for="(item, index) in filteredActivities"
v-for="(item, index) in activities"
:key="index"
@click="goToActivityDetail(item)"
>
@ -59,33 +73,37 @@
<view class="title-row">
<!-- 活动标签 -->
<view class="activity-tag" :style="{ backgroundColor: item.tagColor }">
{{ item.tag }}
{{ item.score }}
</view>
<view class="activity-title">{{ item.title }}</view>
</view>
<view class="activity-location">
<uv-icon name="map-fill" size="14" color="#999"></uv-icon>
<text class="location-text">{{ item.location }}</text>
<text class="location-text">{{ item.address }}</text>
</view>
<view class="activity-time">
<uv-icon name="calendar" size="14" color="#999"></uv-icon>
<text class="time-text">{{ item.time }}</text>
<text class="time-text">{{ item.createTime }}</text>
</view>
<view class="activity-participants">
<uv-icon name="account-fill" size="14" color="#999"></uv-icon>
<text class="participants-text">报名人数{{ item.participants }}/{{ item.maxParticipants }}</text>
<text class="participants-text" >报名人数{{ item.numActivity }}/{{ item.numLimit }}</text>
</view>
</view>
<!-- 报名按钮 -->
<view class="activity-action">
<uv-button type="primary" size="mini" shape="circle" :text="item.isFullOrExpired ? '已结束' : '报名中'" :disabled="item.isFullOrExpired" @click.stop="signUpActivity(item)"></uv-button>
<uv-button v-if="item.status === '1'" type="primary" size="mini" shape="circle" text="已结束" disabled @click.stop="signUpActivity(item)"></uv-button>
<uv-button v-else-if="item.isApply === 1" type="primary" size="mini" shape="circle" text="已报名" disabled @click.stop="signUpActivity(item)"></uv-button>
<uv-button v-else type="primary" size="mini" shape="circle" :text="item.numActivity >= item.numLimit ? '已结束' : '报名中'" :disabled="item.numActivity >= item.numLimit" @click.stop="signUpActivity(item)"></uv-button>
</view>
</view>
</view>
<!-- 空状态 -->
<view class="empty-state" v-if="filteredActivities.length === 0">
<view class="empty-state" v-if="activities.length === 0">
<uv-empty mode="data" text="暂无活动数据"></uv-empty>
</view>
</view>
@ -97,113 +115,56 @@ export default {
return {
searchKeyword: '',
primaryActiveTab: 'current', // current: , past:
params: {
pageNo: 1,
pageSize: 10,
title: '', //
// categoryId: null, // id
status: 0 // 0 1
},
secondaryActiveIndex: 0,
secondaryTabs: [
{ name: '全部' },
{ name: '品牌项目' },
{ name: '公益活动' },
{ name: '培训活动' }
],
//
activities: [
{
id: 1,
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际人才2145',
time: '2025/08/1-2025/09/01',
participants: 12,
maxParticipants: 30,
image: '/static/bannerImage.png',
tag: '30分',
tagColor: '#007AFF',
category: 'charity', // all, brand, charity, training
status: 'current', // current, past
isFullOrExpired: false
},
{
id: 2,
title: '社区环保志愿服务',
location: '长沙市岳麓区梅溪湖国际新城',
time: '2025/07/15-2025/07/20',
participants: 25,
maxParticipants: 40,
image: '/static/bannerImage.png',
tag: '20分',
tagColor: '#52C41A',
category: 'charity',
status: 'current',
isFullOrExpired: false
},
{
id: 3,
title: '青少年编程培训',
location: '长沙市开福区万达广场',
time: '2025/06/01-2025/06/30',
participants: 30,
maxParticipants: 30,
image: '/static/bannerImage.png',
tag: '50分',
tagColor: '#FF6B35',
category: 'training',
status: 'past',
isFullOrExpired: true
},
{
id: 4,
title: '品牌推广活动',
location: '长沙市天心区IFS国金中心',
time: '2025/05/10-2025/05/15',
participants: 18,
maxParticipants: 25,
image: '/static/bannerImage.png',
tag: '40分',
tagColor: '#722ED1',
category: 'brand',
status: 'past',
isFullOrExpired: true
}
]
activities: []
}
},
computed: {
filteredActivities() {
let filtered = this.activities;
// tab
filtered = filtered.filter(item => item.status === this.primaryActiveTab);
// tab
const categoryMap = {
0: 'all',
1: 'brand',
2: 'charity',
3: 'training'
};
const selectedCategory = categoryMap[this.secondaryActiveIndex];
if (selectedCategory !== 'all') {
filtered = filtered.filter(item => item.category === selectedCategory);
}
//
if (this.searchKeyword.trim()) {
filtered = filtered.filter(item =>
item.title.toLowerCase().includes(this.searchKeyword.toLowerCase())
);
}
return filtered;
}
// store
categoryActivityList() {
return this.$store.state.categoryActivityList || []
},
},
methods: {
handleSearch(value) {
if (value) {
this.params['title'] = value
}
this.initData()
this.getActivityList()
},
// tab
switchPrimaryTab(tab) {
this.primaryActiveTab = tab;
this.initData()
delete this.params['categoryId']
//
this.secondaryActiveIndex = 0
this.params['status'] = tab === 'current' ? 0 : 1
this.getActivityList()
},
// tab
switchSecondaryTab(index) {
this.secondaryActiveIndex = index;
async switchSecondaryTab(index, tabName, categoryId = null) {
this.initData()
this.secondaryActiveIndex = index
delete this.params['categoryId']
if (index === 0) {
// Tab
console.log('点击了全部Tab')
} else {
// Tab
this.params['categoryId'] = categoryId
}
await this.getActivityList()
},
//
@ -225,12 +186,45 @@ export default {
uni.navigateTo({
url: `/subPages/index/activityDetail?id=${item.id}`
});
},
//
async getActivityList(){
const res = await this.$api.activity.queryActivityList(this.params)
if(res.result.records.length){
this.activities.push(...res.result.records)
this.params.pageNo++
}else {
uni.showToast({
title: '暂无活动数据',
icon: 'none'
})
}
},
initData() {
this.params['pageNo'] = 1
this.activities = []
}
},
onLoad() {
//
console.log('活动页面加载完成');
async onShow() {
// store
if (this.categoryActivityList.length === 0) {
await this.$store.dispatch('getCategoryActivityList')
}
this.initData()
this.params['title'] = ''
await this.getActivityList()
},
onReachBottom() {
this.getActivityList()
},
async onPullDownRefresh() {
this.initData()
await this.getActivityList()
uni.stopPullDownRefresh()
}
}
</script>
@ -250,14 +244,14 @@ export default {
}
.search-bar {
background-color: white;
border-radius: 50rpx;
padding: 20rpx 30rpx;
display: flex;
align-items: center;
gap: 20rpx;
width: 85%;
margin: 0 auto ; /* 移除margin-top,只保留左右居中和下边距 */
// background-color: white;
// border-radius: 50rpx;
padding: 5rpx 40rpx;
// display: flex;
// align-items: center;
// gap: 20rpx;
// width: 85%;
// margin: 0 auto ; /* margin-top */
}
.search-input {
@ -284,7 +278,7 @@ export default {
font-size: 32rpx;
color: #000000; /* 白色半透明 */
position: relative;
transition: color 0.3s ease;
&.active {
color: white; /* 激活状态为纯白色 */
font-weight: 600;
@ -295,6 +289,7 @@ export default {
bottom: 0;
left: 50%;
transform: translateX(-50%);
// transition: transform 0.3s ease;
width: 100rpx;
height: 6rpx;
background-color: white; /* 下划线改为白色 */
@ -303,10 +298,52 @@ export default {
}
}
// Tab -
// Tab -
.secondary-tabs {
background-color: white;
border-bottom: 1px solid #f0f0f0;
position: relative;
.tab-scroll {
white-space: nowrap;
.tab-list {
display: flex;
// position: relative;
justify-content: space-evenly;
.tab-item {
flex-shrink: 0;
padding: 24rpx 32rpx;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
.tab-text {
font-size: 28rpx;
color: #666666;
font-weight: 500;
transition: color 0.3s ease;
}
&.active {
.tab-text {
color: #007AFF;
font-weight: 600;
}
}
}
}
.tab-line {
position: absolute;
bottom: 10;
height: 6rpx;
background-color: #007AFF;
border-radius: 3rpx;
transition: transform 0.3s ease;
}
}
}
//


+ 39
- 2
stores/index.js View File

@ -9,7 +9,9 @@ const store = new Vuex.Store({
// 存放状态
configList: [],
careerList: [],
qualificationList: []
qualificationList: [],
categoryGoodsList: [],
categoryActivityList: []
},
mutations: {
setConfigList(state, data) {
@ -20,7 +22,13 @@ const store = new Vuex.Store({
},
setQualificationList(state, data) {
state.qualificationList = data
}
},
setCategoryGoodsList(state, data) {
state.categoryGoodsList = data
},
setCategoryActivityList(state, data) {
state.categoryActivityList = data
}
},
actions: {
// 查询配置列表
@ -51,6 +59,35 @@ const store = new Vuex.Store({
// } else {
// uni.showToast({ title: res.msg, icon: 'error' })
// }
},
// 查询商品分类列表
async getCategoryGoodsList({ commit }) {
const res = await api.config.queryCategoryGoodsList()
commit('setCategoryGoodsList', res.result.records)
},
// 查询活动分类列表
async getCategoryActivityList({ commit }) {
const res = await api.config.queryCategoryActivityList()
commit('setCategoryActivityList', res.result.records)
},
// 初始化数据
async initData({ dispatch }) {
try {
await Promise.all([
dispatch('getConfig'),
dispatch('getCareer'),
dispatch('getQualification'),
dispatch('getCategoryGoodsList'),
dispatch('getCategoryActivityList')
])
console.log('所有配置数据初始化完成')
} catch (error) {
console.error('配置数据初始化失败:', error)
}
}
}
})


+ 39
- 30
subPages/community/publishPost.vue View File

@ -21,13 +21,13 @@
<view class="textarea-container">
<textarea
class="message-textarea"
v-model="messageContent"
v-model="content"
placeholder="请输入您的留言内容..."
maxlength="500"
:show-confirm-bar="false"
></textarea>
<view class="char-count">
<text class="count-text">{{ messageContent.length }}/500</text>
<text class="count-text">{{ content.length }}/500</text>
</view>
</view>
</view>
@ -38,7 +38,7 @@
<!-- 已选择的图片 -->
<view
class="image-item"
v-for="(image, index) in selectedImages"
v-for="(image, index) in image"
:key="index"
>
<image class="preview-image" :src="image" mode="aspectFill"></image>
@ -50,7 +50,7 @@
<!-- 添加图片按钮 -->
<view
class="add-image-btn"
v-if="selectedImages.length < 9"
v-if="image.length < 9"
@click="chooseImage"
>
<uv-icon name="plus" size="24" color="#999"></uv-icon>
@ -66,7 +66,7 @@
class="submit-btn"
type="primary"
shape="circle"
:disabled="!messageContent.trim()"
:disabled="!content.trim()"
@click="submitPost"
>
提交审核
@ -80,21 +80,30 @@ export default {
name: 'PublishPost',
data() {
return {
messageContent: '',
selectedImages: [],
content: '',
image: [],
isPhoto: false
}
},
methods: {
chooseImage() {
const remainingCount = 9 - this.selectedImages.length
uni.chooseMedia({
count: remainingCount,
mediaType: ['image'],
const remainingCount = 9 - this.image.length
uni.chooseImage({
count: 1,
sourceType: ['album', 'camera'],
success: (res) => {
const tempFiles = res.tempFiles.map(file => file.tempFilePath)
this.selectedImages = [...this.selectedImages, ...tempFiles]
success: async (res) => {
// const tempFiles = res.tempFiles.map(file => file.tempFilePath)
// this.image = [...this.image, ...tempFiles]
// console.log(...res.tempFilePaths);
const file = {
path: res.tempFilePaths[0]
}
const uploadRes = await this.$utils.uploadImage(file)
this.image.push(uploadRes.url)
uni.showToast({
title: '图片上传成功',
icon: 'success'
})
},
fail: (err) => {
console.error('选择图片失败:', err)
@ -102,40 +111,40 @@ export default {
})
},
removeImage(index) {
this.selectedImages.splice(index, 1)
this.image.splice(index, 1)
},
submitPost() {
if (!this.messageContent.trim()) {
async submitPost() {
if (!this.content.trim()) {
uni.showToast({
title: '请输入留言内容',
icon: 'none'
})
return
}
//
uni.showLoading({
title: '提交中...'
const res = await this.$api.community.addPost({
content: this.content,
image: this.image.toString(),
type: this.isPhoto ? 1 : 0
})
setTimeout(() => {
uni.hideLoading()
if (res.code === 200) {
uni.showToast({
title: '提交成功,等待审核',
title: '提交成功',
icon: 'success'
})
setTimeout(() => {
uni.navigateBack()
}, 1500)
}, 2000)
}, 1000)
}else {
uni.showToast({
title: `${res.message}`,
icon: 'none'
})
}
}
},
onLoad(options) {
if (options.page === 'photo') {
this.isPhoto = true
console.log(this.isPhoto);
}
}
}


+ 66
- 70
subPages/index/activityCalendar.vue View File

@ -13,7 +13,7 @@
src="/subPages/static/活动日历_图标@2x.png"
class="calendar-icon"
></image>
<text class="date-text">{{ dayData.date }} ({{ dayData.weekday }})</text>
<text class="date-text">{{ dayData.activityTime }} {{ dayData.dayOfWeek }}</text>
</view>
<!-- 活动列表容器 -->
@ -31,24 +31,24 @@
<view class="activity-info">
<view class="title-row">
<view class="activity-badge">
<text class="badge-text">{{ activity.duration }}</text>
<text class="badge-text">{{ activity.score }}</text>
</view>
<text class="activity-title">{{ activity.title }}</text>
</view>
<view class="activity-location">
<uv-icon name="map-fill" size="14" color="#999"></uv-icon>
<text class="location-text">{{ activity.location }}</text>
<text class="location-text">{{ activity.address }}</text>
</view>
<view class="activity-time">
<uv-icon name="calendar" size="14" color="#999"></uv-icon>
<text class="time-text">{{ activity.time }}</text>
<text class="time-text">{{ activity.activityTime }}</text>
</view>
<view class="activity-participants">
<uv-icon name="account-fill" size="14" color="#999"></uv-icon>
<text class="participants-text">{{ activity.registeredCount }}/{{ activity.maxCount }}人已报名</text>
<text class="participants-text">{{ activity.numActivity }}/{{ activity.numLimit }}人已报名</text>
</view>
</view>
@ -70,66 +70,9 @@ export default {
name: 'ActivityCalendar',
data() {
return {
activityData: [
{
date: '2025-06-09',
weekday: '周一',
activities: [
{
id: 1,
duration: '30分',
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际大厦2145',
time: '2025-06-12 14:30',
registeredCount: 30,
maxCount: 30,
image: '/static/bannerImage.png'
},
{
id: 2,
duration: '30分',
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际大厦2145',
time: '2025-06-12 14:30',
registeredCount: 30,
maxCount: 30,
image: '/static/bannerImage.png'
}
]
},
{
date: '2025-06-10',
weekday: '周五',
activities: [
{
id: 3,
duration: '30分',
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际大厦2145',
time: '2025-06-12 14:30',
registeredCount: 30,
maxCount: 30,
image: '/static/bannerImage.png'
}
]
},
{
date: '2025-06-16',
weekday: '周一',
activities: [
{
id: 4,
duration: '30分',
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际大厦2145',
time: '2025-06-12 14:30',
registeredCount: 30,
maxCount: 30,
image: '/static/bannerImage.png'
}
]
}
]
activityData: [],
pageNo: 1,
pageSize: 10
}
},
methods: {
@ -140,15 +83,68 @@ export default {
});
},
getActivityData() {
//
// API
console.log('获取活动日历数据');
//
formatTime(timeString) {
//
const [datePart, timePart] = timeString.split(' ');
return datePart;
},
//
changeData(arr) {
arr.forEach(item => {
//
const existingDay = this.activityData.find(day =>
day.dayOfWeek === item.dayOfWeek && this.formatTime(day.activityTime) === this.formatTime(item.activityTime)
);
if (existingDay) {
// activities
existingDay.activities.push(item);
} else {
//
this.activityData.push({
activityTime: this.formatTime(item.activityTime),
dayOfWeek: item.dayOfWeek,
activities: [item]
});
}
});
},
async getActivityData() {
const res = await this.$api.activity.queryActivityList({
pageNo: this.pageNo,
pageSize: this.pageSize
})
if (res.result.records.length){
this.changeData(res.result.records)
this.pageNo++
}else {
uni.showToast({
title: '暂无数据',
icon: 'none'
})
}
},
initData() {
this.activityData = []
this.pageNo = 1
}
},
onLoad() {
async onShow() {
this.initData()
await this.getActivityData();
},
onReachBottom() {
this.getActivityData();
},
async onPullDownRefresh() {
this.initData()
await this.getActivityData();
uni.stopPullDownRefresh()
}
}
</script>


+ 10
- 1
subPages/index/activityDetail.vue View File

@ -103,7 +103,16 @@
</view>
<view class="action-right">
<uv-button
v-if="activityData.isApply === 1"
v-if="activityData.status === '1'"
type="primary"
size="normal"
text="已结束"
shape="circle"
@click="signUpActivity"
:disabled="true"
></uv-button>
<uv-button
v-else-if="activityData.isApply === 1"
type="primary"
size="normal"
text="您已报名"


+ 44
- 66
subPages/my/activityCheckin.vue View File

@ -5,26 +5,26 @@
<!-- 签到列表 -->
<view class="content">
<view v-if="checkinList.length > 0" class="list">
<view v-for="item in checkinList" :key="item.id" class="activity-item" @click="viewActivityDetail(item)">
<view v-for="item in checkinList" :key="item.id" class="activity-item" @click="checkinActivity(item)">
<image class="activity-image" :src="item.image" mode="aspectFill"></image>
<view class="activity-info">
<view class="title-row">
<view class="activity-badge">
<text class="badge-text">{{ item.points }}</text>
<text class="badge-text">{{ item.score }}</text>
</view>
<text class="activity-title">{{ item.title }}</text>
</view>
<view class="activity-location">
<uv-icon name="map-fill" size="14" color="#999"></uv-icon>
<text class="location-text">{{ item.location }}</text>
<text class="location-text">{{ item.address }}</text>
</view>
<view class="activity-time">
<uv-icon name="calendar" size="14" color="#999"></uv-icon>
<text class="time-text">{{ item.time }}</text>
<text class="time-text">{{ item.activityTime }}</text>
</view>
<view class="activity-participants">
<uv-icon name="account-fill" size="14" color="#999"></uv-icon>
<text class="participants-text">{{ item.participants }}人已报名</text>
<text class="participants-text">{{ item.numActivity }}人已报名</text>
</view>
</view>
<view class="activity-action">
@ -32,7 +32,6 @@
type="primary"
size="mini"
text="签到码"
@click.stop="checkinActivity(item)"
></uv-button>
</view>
</view>
@ -42,8 +41,7 @@
</view>
</view>
<!-- 操作菜单 -->
<uv-action-sheet :show="showActionSheet" :actions="actions" @close="showActionSheet = false" @select="onActionSelect"></uv-action-sheet>
</view>
</template>
@ -51,77 +49,57 @@
export default {
data() {
return {
showActionSheet: false,
actions: [
{ name: '刷新列表', color: '#218cdd' }
],
checkinList: [
{
id: 1,
title: '关爱自闭儿童活动',
image: '/static/bannerImage.png',
location: '七步沙社区文化中心',
time: '2025-06-12 14:30',
participants: 12,
points: 30,
status: 'pending' // pending: , checked:
},
{
id: 2,
title: '社区环保志愿活动',
image: '/static/bannerImage.png',
location: '绿园社区广场',
time: '2025-06-13 09:00',
participants: 25,
points: 25,
status: 'checked'
},
{
id: 3,
title: '老年人关爱服务',
image: '/static/bannerImage.png',
location: '夕阳红养老院',
time: '2025-06-14 15:00',
participants: 8,
points: 35,
status: 'pending'
},
{
id: 4,
title: '青少年心理健康讲座',
image: '/static/bannerImage.png',
location: '市图书馆报告厅',
time: '2025-06-15 19:30',
participants: 45,
points: 20,
status: 'pending'
}
]
],
pageNo: 1,
pageSize: 10
}
},
methods: {
//
viewActivityDetail(item) {
uni.navigateTo({
url: `/subPages/index/activityDetail?id=${item.id}`
})
},
//
checkinActivity(item) {
uni.navigateTo({
url: `/subPages/my/checkinCode?id=${item.id}&title=${item.title}&points=${item.points}`
url: `/subPages/my/checkinCode?id=${item.id}`
})
},
//
onActionSelect(item) {
if (item.name === '刷新列表') {
initData() {
this.checkinList = []
this.pageNo = 1
},
//
async getCheckinList() {
const res = await this.$api.activity.queryActivityList({
status: 0,
pageNo: this.pageNo,
pageSize: this.pageSize
})
if (res.result.records.length) {
// this.checkinList = [...this.checkinList, ...res.result.records]
this.checkinList.push(...res.result.records)
this.pageNo++
}else {
uni.showToast({
title: '刷新成功',
icon: 'success'
title: '暂无签到活动',
icon: 'none'
})
}
this.showActionSheet = false
}
},
onShow() {
this.initData()
this.getCheckinList()
},
onReachBottom() {
// this.initData()
this.getCheckinList()
},
async onPullDownRefresh() {
this.initData()
await this.getCheckinList()
uni.stopPullDownRefresh()
}
}
</script>


+ 15
- 37
subPages/my/checkinCode.vue View File

@ -6,21 +6,21 @@
<view class="activity-info">
<view class="title-row">
<view class="activity-badge">
<text class="badge-text">{{ activityInfo.points }}</text>
<text class="badge-text">{{ activityInfo.score }}</text>
</view>
<text class="activity-title">{{ activityInfo.title }}</text>
</view>
<view class="activity-location">
<uv-icon name="map-fill" size="14" color="#999"></uv-icon>
<text class="location-text">{{ activityInfo.location }}</text>
<text class="location-text">{{ activityInfo.address }}</text>
</view>
<view class="activity-time">
<uv-icon name="calendar" size="14" color="#999"></uv-icon>
<text class="time-text">{{ activityInfo.time }}</text>
<text class="time-text">{{ activityInfo.activityTime }}</text>
</view>
<view class="activity-participants">
<uv-icon name="account-fill" size="14" color="#999"></uv-icon>
<text class="participants-text">{{ activityInfo.participants }}/{{ activityInfo.maxParticipants }}人已报名</text>
<text class="participants-text">{{ activityInfo.numActivity }}/{{ activityInfo.numLimit }}人已报名</text>
</view>
</view>
</view>
@ -57,51 +57,29 @@ export default {
data() {
return {
activityInfo: {
id: '',
title: '',
image: '/static/bannerImage.png',
location: '',
time: '',
participants: 0,
maxParticipants: 30,
points: 0
},
qrcodeValue: 'https://h5.uvui.cn',
qrCodeReady: false
}
},
onLoad(options) {
async onLoad(options) {
//
if (options.id) {
this.activityInfo.id = options.id
}
if (options.title) {
this.activityInfo.title = decodeURIComponent(options.title)
}
if (options.points) {
this.activityInfo.points = options.points
}
//
this.loadActivityInfo()
await this.getActiviyDetail(options.id)
}
//
this.generateQRCode()
},
methods: {
//
loadActivityInfo() {
// IDAPI
// 使
this.activityInfo = {
...this.activityInfo,
location: '长沙市雨花区时代阳光大道国际新城2145',
time: '2025-06-12 14:30',
participants: 30,
maxParticipants: 30
}
async getActiviyDetail(id) {
const res = await this.$api.activity.queryActivityById({
activityId: id
})
this.activityInfo = res.result
},
//
generateQRCode() {
//


+ 17
- 22
subPages/my/myActivityDetail.vue View File

@ -139,19 +139,7 @@ export default {
return {
status: 'unsigned', // unsigned: , signed: , cancelled:
activityData: {
title: '关爱自闭症儿童活动',
score: '30积分',
activityTime: '2025-06-12 14:30',
startTime: '2025-06-01 14:30——2025-09-01 14:30',
contact: '柳老师 (13256484512)',
rule: '报名随时可取消',
address: '长沙市雨花区时代阳光大夏国际大厅2145',
numActivity: 9,
numLimit: 30,
details: '身体健康,热爱志愿服务工作,富有责任感和奉献精神',
image: '/static/bannerImage.png,/static/bannerImage.png,/static/bannerImage.png',
atlas: '/static/bannerImage.png,/static/bannerImage.png,/static/bannerImage.png,/static/bannerImage.png',
isCollection: 0
},
activityId: null
}
@ -200,17 +188,24 @@ export default {
icon: 'none'
})
},
scanQRCode() {
async scanQRCode() {
//
uni.scanCode({
success: (res) => {
console.log('扫码结果:', res)
// API
this.status = 'signed'
uni.showToast({
title: '签到成功',
icon: 'success'
})
success: async (res) => {
const { activityId } = JSON.parse(res.result)
const scanRes = await this.$api.activity.signActivity({ activityId })
if (scanRes.code === 200) {
this.status = 'signed'
uni.showToast({
title: scanRes.message,
icon: 'success'
})
} else {
uni.showToast({
title: scanRes.message,
icon: 'none'
})
}
},
fail: (err) => {
console.log('扫码失败:', err)


+ 1
- 1
subPages/my/myProfile.vue View File

@ -99,7 +99,7 @@ export default {
async onChooseAvatar(e) {
console.log('选择头像回调', e);
if (e.detail.avatarUrl) {
this.userInfo.headImage = e.detail.avatarUrl;
// this.userInfo.headImage = e.detail.avatarUrl;
// console.log('', e.detail.avatarUrl);
const file = {
path: e.detail.avatarUrl


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/HomePageNav.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/RecommendedActivities.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerFeatures.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerHeader.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/index/VolunteerRanking.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/shop/PointsCard.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/components/shop/ShopContent.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/activity.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/community.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/my.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/shop.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/community/publishPost.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/activityCalendar.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/activityDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/announcement.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/announcementDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/components/SignUpForm.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/organizationIntroduction.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/ranking.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/index/volunteerApply.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/login/login.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/login/userInfo.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/activityCheckin.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/activityFavorites.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/checkinCode.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/exchangeDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/exchangeRecord.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myActivityDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myProfile.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/myRegistrations.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/my/productFavorites.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/shop/goodsDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/subPages/shop/pointsDetail.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-action-sheet/components/uv-action-sheet/uv-action-sheet.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-form/components/uv-form-item/uv-form-item.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-overlay/components/uv-overlay/uv-overlay.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-picker/components/uv-picker/uv-picker.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-popup/components/uv-popup/uv-popup.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-search/components/uv-search/uv-search.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.js.map
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar.js.map
File diff suppressed because it is too large
View File


+ 28
- 23
unpackage/dist/dev/mp-weixin/common/main.js View File

@ -16,8 +16,8 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/run
__webpack_require__(/*! uni-pages */ 26);
var _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 27));
var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
__webpack_require__(/*! ./uni.promisify.adaptor */ 33);
var api = _interopRequireWildcard(__webpack_require__(/*! @/api */ 34));
__webpack_require__(/*! ./uni.promisify.adaptor */ 36);
var api = _interopRequireWildcard(__webpack_require__(/*! @/api */ 37));
var _utils = _interopRequireDefault(__webpack_require__(/*! @/utils */ 48));
var _stores = _interopRequireDefault(__webpack_require__(/*! @/stores */ 51));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@ -52,8 +52,8 @@ createApp(app).$mount();
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./App.vue?vue&type=script&lang=js& */ 28);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _App_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./App.vue?vue&type=style&index=0&lang=scss& */ 30);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./App.vue?vue&type=style&index=0&lang=scss& */ 33);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var render, staticRenderFns, recyclableRender, components
var renderjs
@ -105,42 +105,47 @@ __webpack_require__.r(__webpack_exports__);
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
var _default = {
onLaunch: function onLaunch() {
console.log('App Launch');
// 查询配置列表
this.$store.dispatch('getConfig');
// 查询职业列表
this.$store.dispatch('getCareer');
// 查询学历列表
this.$store.dispatch('getQualification');
var _this = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return _this.$store.dispatch('initData');
case 2:
console.log('配置数据初始化完成');
case 3:
case "end":
return _context.stop();
}
}
}, _callee);
}))();
},
onShow: function onShow() {
console.log('App Show');
if (!uni.getStorageSync('token')) {
uni.reLaunch({
url: '/subPages/login/login'
});
// return
}
},
onHide: function onHide() {
console.log('App Hide');
}
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
/***/ }),
/***/ 30:
/***/ 33:
/*!****************************************************************!*\
!*** E:///App.vue?vue&type=style&index=0&lang=scss& ***!
\****************************************************************/
@ -149,14 +154,14 @@ exports.default = _default;
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=scss& */ 31);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=scss& */ 34);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_App_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0___default.a);
/***/ }),
/***/ 31:
/***/ 34:
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!E:///App.vue?vue&type=style&index=0&lang=scss& ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/


+ 2
- 2
unpackage/dist/dev/mp-weixin/common/runtime.js View File

@ -105,11 +105,11 @@
/******/
/******/
/******/ // mini-css-extract-plugin CSS loading
/******/ var cssChunks = {"pages/components/index/RecommendedActivities":1,"pages/components/index/VolunteerHeader":1,"pages/components/HomePageNav":1,"pages/components/index/VolunteerFeatures":1,"pages/components/index/VolunteerRanking":1,"pages/components/shop/PointsCard":1,"pages/components/shop/ShopContent":1,"uni_modules/uv-button/components/uv-button/uv-button":1,"uni_modules/uv-empty/components/uv-empty/uv-empty":1,"uni_modules/uv-icon/components/uv-icon/uv-icon":1,"uni_modules/uv-tabs/components/uv-tabs/uv-tabs":1,"uni_modules/uv-form/components/uv-form-item/uv-form-item":1,"uni_modules/uv-input/components/uv-input/uv-input":1,"uni_modules/uv-picker/components/uv-picker/uv-picker":1,"uni_modules/uv-textarea/components/uv-textarea/uv-textarea":1,"subPages/index/components/SignUpForm":1,"uni_modules/uv-swiper/components/uv-swiper/uv-swiper":1,"uni_modules/uv-action-sheet/components/uv-action-sheet/uv-action-sheet":1,"uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode":1,"uni_modules/uv-search/components/uv-search/uv-search":1,"uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon":1,"uni_modules/uv-badge/components/uv-badge/uv-badge":1,"uni_modules/uv-line/components/uv-line/uv-line":1,"uni_modules/uv-popup/components/uv-popup/uv-popup":1,"uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar":1,"uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator":1,"uni_modules/uv-overlay/components/uv-overlay/uv-overlay":1,"uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar":1,"uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom":1};
/******/ var cssChunks = {"pages/components/index/RecommendedActivities":1,"pages/components/index/VolunteerHeader":1,"pages/components/HomePageNav":1,"pages/components/index/VolunteerFeatures":1,"pages/components/index/VolunteerRanking":1,"pages/components/shop/PointsCard":1,"pages/components/shop/ShopContent":1,"uni_modules/uv-button/components/uv-button/uv-button":1,"uni_modules/uv-empty/components/uv-empty/uv-empty":1,"uni_modules/uv-icon/components/uv-icon/uv-icon":1,"uni_modules/uv-search/components/uv-search/uv-search":1,"uni_modules/uv-form/components/uv-form-item/uv-form-item":1,"uni_modules/uv-input/components/uv-input/uv-input":1,"uni_modules/uv-picker/components/uv-picker/uv-picker":1,"uni_modules/uv-textarea/components/uv-textarea/uv-textarea":1,"subPages/index/components/SignUpForm":1,"uni_modules/uv-swiper/components/uv-swiper/uv-swiper":1,"uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode":1,"uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon":1,"uni_modules/uv-line/components/uv-line/uv-line":1,"uni_modules/uv-popup/components/uv-popup/uv-popup":1,"uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar":1,"uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator":1,"uni_modules/uv-overlay/components/uv-overlay/uv-overlay":1,"uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar":1,"uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom":1};
/******/ if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);
/******/ else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {
/******/ promises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {
/******/ var href = "" + ({"pages/components/index/RecommendedActivities":"pages/components/index/RecommendedActivities","pages/components/index/VolunteerHeader":"pages/components/index/VolunteerHeader","pages/components/HomePageNav":"pages/components/HomePageNav","pages/components/index/VolunteerFeatures":"pages/components/index/VolunteerFeatures","pages/components/index/VolunteerRanking":"pages/components/index/VolunteerRanking","pages/components/shop/PointsCard":"pages/components/shop/PointsCard","pages/components/shop/ShopContent":"pages/components/shop/ShopContent","uni_modules/uv-button/components/uv-button/uv-button":"uni_modules/uv-button/components/uv-button/uv-button","uni_modules/uv-empty/components/uv-empty/uv-empty":"uni_modules/uv-empty/components/uv-empty/uv-empty","uni_modules/uv-icon/components/uv-icon/uv-icon":"uni_modules/uv-icon/components/uv-icon/uv-icon","uni_modules/uv-tabs/components/uv-tabs/uv-tabs":"uni_modules/uv-tabs/components/uv-tabs/uv-tabs","uni_modules/uv-form/components/uv-form-item/uv-form-item":"uni_modules/uv-form/components/uv-form-item/uv-form-item","uni_modules/uv-form/components/uv-form/uv-form":"uni_modules/uv-form/components/uv-form/uv-form","uni_modules/uv-input/components/uv-input/uv-input":"uni_modules/uv-input/components/uv-input/uv-input","uni_modules/uv-picker/components/uv-picker/uv-picker":"uni_modules/uv-picker/components/uv-picker/uv-picker","uni_modules/uv-textarea/components/uv-textarea/uv-textarea":"uni_modules/uv-textarea/components/uv-textarea/uv-textarea","subPages/index/components/SignUpForm":"subPages/index/components/SignUpForm","uni_modules/uv-swiper/components/uv-swiper/uv-swiper":"uni_modules/uv-swiper/components/uv-swiper/uv-swiper","uni_modules/uv-action-sheet/components/uv-action-sheet/uv-action-sheet":"uni_modules/uv-action-sheet/components/uv-action-sheet/uv-action-sheet","uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode":"uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode","uni_modules/uv-search/components/uv-search/uv-search":"uni_modules/uv-search/components/uv-search/uv-search","uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon":"uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon","uni_modules/uv-badge/components/uv-badge/uv-badge":"uni_modules/uv-badge/components/uv-badge/uv-badge","uni_modules/uv-line/components/uv-line/uv-line":"uni_modules/uv-line/components/uv-line/uv-line","uni_modules/uv-transition/components/uv-transition/uv-transition":"uni_modules/uv-transition/components/uv-transition/uv-transition","uni_modules/uv-popup/components/uv-popup/uv-popup":"uni_modules/uv-popup/components/uv-popup/uv-popup","uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar":"uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar","uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator":"uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator","uni_modules/uv-gap/components/uv-gap/uv-gap":"uni_modules/uv-gap/components/uv-gap/uv-gap","uni_modules/uv-overlay/components/uv-overlay/uv-overlay":"uni_modules/uv-overlay/components/uv-overlay/uv-overlay","uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar":"uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar","uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom":"uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom"}[chunkId]||chunkId) + ".wxss";
/******/ var href = "" + ({"pages/components/index/RecommendedActivities":"pages/components/index/RecommendedActivities","pages/components/index/VolunteerHeader":"pages/components/index/VolunteerHeader","pages/components/HomePageNav":"pages/components/HomePageNav","pages/components/index/VolunteerFeatures":"pages/components/index/VolunteerFeatures","pages/components/index/VolunteerRanking":"pages/components/index/VolunteerRanking","pages/components/shop/PointsCard":"pages/components/shop/PointsCard","pages/components/shop/ShopContent":"pages/components/shop/ShopContent","uni_modules/uv-button/components/uv-button/uv-button":"uni_modules/uv-button/components/uv-button/uv-button","uni_modules/uv-empty/components/uv-empty/uv-empty":"uni_modules/uv-empty/components/uv-empty/uv-empty","uni_modules/uv-icon/components/uv-icon/uv-icon":"uni_modules/uv-icon/components/uv-icon/uv-icon","uni_modules/uv-search/components/uv-search/uv-search":"uni_modules/uv-search/components/uv-search/uv-search","uni_modules/uv-form/components/uv-form-item/uv-form-item":"uni_modules/uv-form/components/uv-form-item/uv-form-item","uni_modules/uv-form/components/uv-form/uv-form":"uni_modules/uv-form/components/uv-form/uv-form","uni_modules/uv-input/components/uv-input/uv-input":"uni_modules/uv-input/components/uv-input/uv-input","uni_modules/uv-picker/components/uv-picker/uv-picker":"uni_modules/uv-picker/components/uv-picker/uv-picker","uni_modules/uv-textarea/components/uv-textarea/uv-textarea":"uni_modules/uv-textarea/components/uv-textarea/uv-textarea","subPages/index/components/SignUpForm":"subPages/index/components/SignUpForm","uni_modules/uv-swiper/components/uv-swiper/uv-swiper":"uni_modules/uv-swiper/components/uv-swiper/uv-swiper","uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode":"uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode","uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon":"uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon","uni_modules/uv-line/components/uv-line/uv-line":"uni_modules/uv-line/components/uv-line/uv-line","uni_modules/uv-transition/components/uv-transition/uv-transition":"uni_modules/uv-transition/components/uv-transition/uv-transition","uni_modules/uv-popup/components/uv-popup/uv-popup":"uni_modules/uv-popup/components/uv-popup/uv-popup","uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar":"uni_modules/uv-toolbar/components/uv-toolbar/uv-toolbar","uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator":"uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator","uni_modules/uv-overlay/components/uv-overlay/uv-overlay":"uni_modules/uv-overlay/components/uv-overlay/uv-overlay","uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar":"uni_modules/uv-status-bar/components/uv-status-bar/uv-status-bar","uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom":"uni_modules/uv-safe-bottom/components/uv-safe-bottom/uv-safe-bottom"}[chunkId]||chunkId) + ".wxss";
/******/ var fullhref = __webpack_require__.p + href;
/******/ var existingLinkTags = document.getElementsByTagName("link");
/******/ for(var i = 0; i < existingLinkTags.length; i++) {


+ 2079
- 2261
unpackage/dist/dev/mp-weixin/common/vendor.js
File diff suppressed because it is too large
View File


+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/components/HomePageNav.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _HomePageNav_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HomePageNav.vue?vue&type=script&lang=js& */ 293);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HomePageNav_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HomePageNav_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _HomePageNav_vue_vue_type_style_index_0_id_63c7fb56_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./HomePageNav.vue?vue&type=style&index=0&id=63c7fb56&lang=scss&scoped=true& */ 295);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs


+ 5
- 5
unpackage/dist/dev/mp-weixin/pages/components/index/RecommendedActivities.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _RecommendedActivities_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RecommendedActivities.vue?vue&type=script&lang=js& */ 286);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _RecommendedActivities_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _RecommendedActivities_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _RecommendedActivities_vue_vue_type_style_index_0_id_14d56f6a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./RecommendedActivities.vue?vue&type=style&index=0&id=14d56f6a&lang=scss&scoped=true& */ 288);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -80,10 +80,10 @@ var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
uvButton: function () {
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 338))
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 337))
},
}
} catch (e) {
@ -147,8 +147,8 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//


+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerFeatures.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _VolunteerFeatures_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VolunteerFeatures.vue?vue&type=script&lang=js& */ 279);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _VolunteerFeatures_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _VolunteerFeatures_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _VolunteerFeatures_vue_vue_type_style_index_0_id_114230ec_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VolunteerFeatures.vue?vue&type=style&index=0&id=114230ec&lang=scss&scoped=true& */ 281);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs


+ 5
- 5
unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerHeader.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _VolunteerHeader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VolunteerHeader.vue?vue&type=script&lang=js& */ 265);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _VolunteerHeader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _VolunteerHeader_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _VolunteerHeader_vue_vue_type_style_index_0_id_781d871a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VolunteerHeader.vue?vue&type=style&index=0&id=781d871a&lang=scss&scoped=true& */ 267);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -80,10 +80,10 @@ var components
try {
components = {
uvSwiper: function () {
return Promise.all(/*! import() | uni_modules/uv-swiper/components/uv-swiper/uv-swiper */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-swiper/components/uv-swiper/uv-swiper")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.vue */ 404))
return Promise.all(/*! import() | uni_modules/uv-swiper/components/uv-swiper/uv-swiper */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-swiper/components/uv-swiper/uv-swiper")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.vue */ 403))
},
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
}
} catch (e) {
@ -147,8 +147,8 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//


+ 2
- 2
unpackage/dist/dev/mp-weixin/pages/components/index/VolunteerRanking.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _VolunteerRanking_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VolunteerRanking.vue?vue&type=script&lang=js& */ 272);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _VolunteerRanking_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _VolunteerRanking_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _VolunteerRanking_vue_vue_type_style_index_0_id_8c72fc0e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VolunteerRanking.vue?vue&type=style&index=0&id=8c72fc0e&lang=scss&scoped=true& */ 274);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -80,7 +80,7 @@ var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
}
} catch (e) {


+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/components/shop/PointsCard.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _PointsCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PointsCard.vue?vue&type=script&lang=js& */ 300);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _PointsCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _PointsCard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _PointsCard_vue_vue_type_style_index_0_id_27ca582c_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PointsCard.vue?vue&type=style&index=0&id=27ca582c&lang=scss&scoped=true& */ 302);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs


+ 161
- 67
unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.js View File

@ -13,7 +13,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _ShopContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ShopContent.vue?vue&type=script&lang=js& */ 307);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _ShopContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _ShopContent_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _ShopContent_vue_vue_type_style_index_0_id_09da055a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ShopContent.vue?vue&type=style&index=0&id=09da055a&lang=scss&scoped=true& */ 309);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -80,13 +80,10 @@ var components
try {
components = {
uvSearch: function () {
return Promise.all(/*! import() | uni_modules/uv-search/components/uv-search/uv-search */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-search/components/uv-search/uv-search")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-search/components/uv-search/uv-search.vue */ 431))
},
uvTabs: function () {
return Promise.all(/*! import() | uni_modules/uv-tabs/components/uv-tabs/uv-tabs */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-tabs/components/uv-tabs/uv-tabs")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.vue */ 329))
return Promise.all(/*! import() | uni_modules/uv-search/components/uv-search/uv-search */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-search/components/uv-search/uv-search")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-search/components/uv-search/uv-search.vue */ 311))
},
uvButton: function () {
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 338))
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 337))
},
}
} catch (e) {
@ -150,9 +147,49 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
@ -226,66 +263,101 @@ var _default = {
name: 'ShopContent',
data: function data() {
return {
searchValue: '',
// searchValue: '',
currentTab: 0,
pageNo: 1,
pageSize: 10,
tabList: [{
name: '全部'
}, {
name: '积分兑换'
}, {
name: '兑换量'
}, {
name: '女装'
}, {
name: '母婴'
}, {
name: '水果'
}, {
name: '竹制品'
}],
title: '',
sortType: '',
// 排序类型:points_asc, points_desc, exchange_asc, exchange_desc
goodsList: [],
buttonStyle: {
width: '128rpx',
height: '44rpx',
borderRadius: '28rpx',
fontSize: '22rpx'
}
},
// 额外的传参
extraParams: {}
};
},
computed: {
// filteredGoodsList() {
// let list = this.goodsList
// // 根据搜索关键词过滤
// if (this.searchValue) {
// list = list.filter(item =>
// item.name.toLowerCase().includes(this.searchValue.toLowerCase())
// )
// }
// // 根据tab过滤
// const currentTabName = this.tabList[this.currentTab].name
// if (currentTabName !== '全部') {
// if (currentTabName === '兑换量') {
// // 按兑换量排序
// list = [...list].sort((a, b) => b.exchangeCount - a.exchangeCount)
// } else {
// // 按分类过滤
// list = list.filter(item => item.category === currentTabName)
// }
// }
// return list
// }
// 从store获取商品分类列表
categoryGoodsList: function categoryGoodsList() {
return this.$store.state.categoryGoodsList || [];
}
},
methods: {
onSearch: function onSearch(value) {
console.log('搜索:', value);
var _this = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (value) _this.title = value;
_this.initData();
_context.next = 4;
return _this.getGoodsList();
case 4:
case "end":
return _context.stop();
}
}
}, _callee);
}))();
},
onTabChange: function onTabChange(index) {
this.currentTab = index;
onTabClick: function onTabClick(index, tabName) {
var _arguments = arguments,
_this2 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
var categoryId;
return _regenerator.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
categoryId = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : null;
_this2.currentTab = index;
_this2.extraParams = {}; // 不带任何额外参数
if (index === 0) {
// 全部Tab
console.log('点击了全部Tab');
} else if (index === 1) {
// 兑换积分Tab - 处理排序
if (_this2.sortType === 'points_asc') {
_this2.sortType = 'points_desc'; // 积分降序
_this2.extraParams['price'] = 0;
} else {
_this2.sortType = 'points_asc'; // 积分升序
_this2.extraParams['price'] = 1;
}
console.log('点击了兑换积分Tab,排序类型:', _this2.sortType);
} else if (index === 2) {
// 兑换量Tab - 处理排序
if (_this2.sortType === 'exchange_asc') {
_this2.sortType = 'exchange_desc'; // 兑换量降序
_this2.extraParams['sales'] = 0;
} else {
_this2.sortType = 'exchange_asc'; // 兑换量升序
_this2.extraParams['sales'] = 1;
}
console.log('点击了兑换量Tab,排序类型:', _this2.sortType);
} else {
// 商品分类Tab
console.log('点击了商品分类Tab:', tabName, '分类ID:', categoryId);
_this2.extraParams['categoryId'] = categoryId;
}
_this2.initData();
_context2.next = 7;
return _this2.getGoodsList();
case 7:
case "end":
return _context2.stop();
}
}
}, _callee2);
}))();
},
onGoodsClick: function onGoodsClick(item) {
// 跳转到商品详情页
@ -309,23 +381,24 @@ var _default = {
});
},
getGoodsList: function getGoodsList() {
var _this = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
var res, _this$goodsList;
return _regenerator.default.wrap(function _callee$(_context) {
var _this3 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
var res, _this3$goodsList;
return _regenerator.default.wrap(function _callee3$(_context3) {
while (1) {
switch (_context.prev = _context.next) {
switch (_context3.prev = _context3.next) {
case 0:
_context.next = 2;
return _this.$api.shop.queryGoodsList({
pageNo: _this.pageNo,
pageSize: _this.pageSize
});
_context3.next = 2;
return _this3.$api.shop.queryGoodsList(_objectSpread({
pageNo: _this3.pageNo,
pageSize: _this3.pageSize,
title: _this3.title
}, _this3.extraParams));
case 2:
res = _context.sent;
res = _context3.sent;
if (res.result.records.length) {
(_this$goodsList = _this.goodsList).push.apply(_this$goodsList, (0, _toConsumableArray2.default)(res.result.records));
_this.pageNo++;
(_this3$goodsList = _this3.goodsList).push.apply(_this3$goodsList, (0, _toConsumableArray2.default)(res.result.records));
_this3.pageNo++;
} else {
uni.showToast({
title: '暂无商品',
@ -334,10 +407,10 @@ var _default = {
}
case 4:
case "end":
return _context.stop();
return _context3.stop();
}
}
}, _callee);
}, _callee3);
}))();
},
// 初始化请求参数
@ -345,6 +418,27 @@ var _default = {
this.pageNo = 1;
this.goodsList = [];
}
},
mounted: function mounted() {
var _this4 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
return _regenerator.default.wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
if (!(_this4.categoryGoodsList.length === 0)) {
_context4.next = 3;
break;
}
_context4.next = 3;
return _this4.$store.dispatch('getCategoryGoodsList');
case 3:
case "end":
return _context4.stop();
}
}
}, _callee4);
}))();
}
};
exports.default = _default;


+ 0
- 1
unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.json View File

@ -2,7 +2,6 @@
"component": true,
"usingComponents": {
"uv-search": "/uni_modules/uv-search/components/uv-search/uv-search",
"uv-tabs": "/uni_modules/uv-tabs/components/uv-tabs/uv-tabs",
"uv-button": "/uni_modules/uv-button/components/uv-button/uv-button"
}
}

+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.wxml View File

@ -1 +1 @@
<view class="shop-content data-v-09da055a"><view class="search-container data-v-09da055a"><uv-search vue-id="316726ec-1" placeholder="搜索商品名" show-action="{{false}}" bg-color="#f3f7f8" inputAlign="center" height="40" margin="10rpx" value="{{searchValue}}" data-event-opts="{{[['^search',[['onSearch']]],['^input',[['__set_model',['','searchValue','$event',[]]]]]]}}" bind:search="__e" bind:input="__e" class="data-v-09da055a" bind:__l="__l"></uv-search></view><view class="tab-container data-v-09da055a"><uv-tabs vue-id="316726ec-2" list="{{tabList}}" current="{{currentTab}}" active-color="#218CDD" inactive-color="#999" line-color="#218CDD" line-width="{{40}}" line-height="{{4}}" font-size="26" height="80" data-event-opts="{{[['^change',[['onTabChange']]]]}}" bind:change="__e" class="data-v-09da055a" bind:__l="__l"></uv-tabs></view><view class="goods-container data-v-09da055a"><view class="goods-grid data-v-09da055a"><block wx:for="{{goodsList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['onGoodsClick',['$0'],[[['goodsList','',index]]]]]]]}}" class="goods-item data-v-09da055a" bindtap="__e"><view class="goods-image data-v-09da055a"><image class="image data-v-09da055a" src="{{item.image}}" mode="aspectFit"></image></view><view class="goods-info data-v-09da055a"><text class="goods-name data-v-09da055a">{{item.title}}</text><view class="goods-bottom data-v-09da055a"><view class="points-info data-v-09da055a"><image class="points-icon data-v-09da055a" src="/static/积分图标.png" mode="aspectFit"></image><text class="points-text data-v-09da055a">{{item.price+"积分"}}</text></view><uv-button vue-id="{{'316726ec-3-'+index}}" type="primary" size="mini" text="立即兑换" custom-style="{{buttonStyle}}" data-event-opts="{{[['^click',[['onExchange',['$0'],[[['goodsList','',index]]]]]]]}}" catch:click="__e" class="data-v-09da055a" bind:__l="__l"></uv-button></view></view></view></block></view></view></view>
<view class="shop-content data-v-09da055a"><view class="search-container data-v-09da055a"><uv-search vue-id="316726ec-1" placeholder="搜索商品名" show-action="{{false}}" bg-color="#f3f7f8" inputAlign="center" height="40" margin="10rpx" value="{{title}}" data-event-opts="{{[['^search',[['onSearch']]],['^clickIcon',[['onSearch']]],['^clear',[['onSearch']]],['^input',[['__set_model',['','title','$event',[]]]]]]}}" bind:search="__e" bind:clickIcon="__e" bind:clear="__e" bind:input="__e" class="data-v-09da055a" bind:__l="__l"></uv-search></view><view class="tab-container data-v-09da055a"><scroll-view class="tab-scroll data-v-09da055a" scroll-x="true"><view class="tab-list data-v-09da055a"><view data-event-opts="{{[['tap',[['onTabClick',[0,'全部']]]]]}}" class="{{['tab-item','data-v-09da055a',(currentTab===0)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-09da055a">全部</text></view><view data-event-opts="{{[['tap',[['onTabClick',[1,'兑换积分']]]]]}}" class="{{['tab-item','sort-tab','data-v-09da055a',(currentTab===1)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-09da055a">兑换积分</text><view class="sort-arrows data-v-09da055a"><view class="{{['arrow','up','data-v-09da055a',(sortType==='points_asc')?'active':'']}}">▲</view><view class="{{['arrow','down','data-v-09da055a',(sortType==='points_desc')?'active':'']}}">▼</view></view></view><view data-event-opts="{{[['tap',[['onTabClick',[2,'兑换量']]]]]}}" class="{{['tab-item','sort-tab','data-v-09da055a',(currentTab===2)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-09da055a">兑换量</text><view class="sort-arrows data-v-09da055a"><view class="{{['arrow','up','data-v-09da055a',(sortType==='exchange_asc')?'active':'']}}">▲</view><view class="{{['arrow','down','data-v-09da055a',(sortType==='exchange_desc')?'active':'']}}">▼</view></view></view><block wx:for="{{categoryGoodsList}}" wx:for-item="category" wx:for-index="index" wx:key="id"><view data-event-opts="{{[['tap',[['onTabClick',[index+3,'$0','$1'],[[['categoryGoodsList','id',category.id,'title']],[['categoryGoodsList','id',category.id,'id']]]]]]]}}" class="{{['tab-item','data-v-09da055a',(currentTab===index+3)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-09da055a">{{category.title}}</text></view></block></view></scroll-view></view><view class="goods-container data-v-09da055a"><view class="goods-grid data-v-09da055a"><block wx:for="{{goodsList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['onGoodsClick',['$0'],[[['goodsList','',index]]]]]]]}}" class="goods-item data-v-09da055a" bindtap="__e"><view class="goods-image data-v-09da055a"><image class="image data-v-09da055a" src="{{item.image}}" mode="aspectFit"></image></view><view class="goods-info data-v-09da055a"><text class="goods-name data-v-09da055a">{{item.title}}</text><view class="goods-bottom data-v-09da055a"><view class="points-info data-v-09da055a"><image class="points-icon data-v-09da055a" src="/static/积分图标.png" mode="aspectFit"></image><text class="points-text data-v-09da055a">{{item.price+"积分"}}</text></view><uv-button vue-id="{{'316726ec-2-'+index}}" type="primary" size="mini" text="立即兑换" custom-style="{{buttonStyle}}" data-event-opts="{{[['^click',[['onExchange',['$0'],[[['goodsList','',index]]]]]]]}}" catch:click="__e" class="data-v-09da055a" bind:__l="__l"></uv-button></view></view></view></block></view></view></view>

+ 49
- 1
unpackage/dist/dev/mp-weixin/pages/components/shop/ShopContent.wxss View File

@ -42,9 +42,57 @@
z-index: 999;
top: 90rpx;
background: #ffffff;
padding: 0 30rpx;
border-bottom: 1rpx solid #f0f0f0;
}
.tab-container .tab-scroll.data-v-09da055a {
white-space: nowrap;
}
.tab-container .tab-scroll .tab-list.data-v-09da055a {
display: flex;
padding: 0 30rpx;
}
.tab-container .tab-scroll .tab-list .tab-item.data-v-09da055a {
flex-shrink: 0;
display: flex;
align-items: center;
padding: 24rpx 32rpx;
margin-right: 16rpx;
border-radius: 32rpx;
background: #f8f9fa;
transition: all 0.3s ease;
}
.tab-container .tab-scroll .tab-list .tab-item .tab-text.data-v-09da055a {
font-size: 28rpx;
color: #666666;
font-weight: 500;
}
.tab-container .tab-scroll .tab-list .tab-item.active.data-v-09da055a {
background: #218CDD;
}
.tab-container .tab-scroll .tab-list .tab-item.active .tab-text.data-v-09da055a {
color: #ffffff;
}
.tab-container .tab-scroll .tab-list .tab-item.active .sort-arrows .arrow.active.data-v-09da055a {
color: #ffffff;
}
.tab-container .tab-scroll .tab-list .tab-item.sort-tab .sort-arrows.data-v-09da055a {
margin-left: 8rpx;
display: flex;
flex-direction: column;
align-items: center;
}
.tab-container .tab-scroll .tab-list .tab-item.sort-tab .sort-arrows .arrow.data-v-09da055a {
font-size: 16rpx;
color: #cccccc;
line-height: 1;
transition: color 0.3s ease;
}
.tab-container .tab-scroll .tab-list .tab-item.sort-tab .sort-arrows .arrow.up.data-v-09da055a {
margin-bottom: 2rpx;
}
.tab-container .tab-scroll .tab-list .tab-item.sort-tab .sort-arrows .arrow.active.data-v-09da055a {
color: #404040;
}
.goods-container.data-v-09da055a {
padding: 20rpx 30rpx;
background: #f8f8f8;


+ 167
- 107
unpackage/dist/dev/mp-weixin/pages/index/activity.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _activity_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./activity.vue?vue&type=script&lang=js& */ 73);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _activity_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _activity_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _activity_vue_vue_type_style_index_0_id_13e34265_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./activity.vue?vue&type=style&index=0&id=13e34265&lang=scss&scoped=true& */ 75);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -100,17 +100,17 @@ __webpack_require__.r(__webpack_exports__);
var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
uvSearch: function () {
return Promise.all(/*! import() | uni_modules/uv-search/components/uv-search/uv-search */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-search/components/uv-search/uv-search")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-search/components/uv-search/uv-search.vue */ 311))
},
uvTabs: function () {
return Promise.all(/*! import() | uni_modules/uv-tabs/components/uv-tabs/uv-tabs */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-tabs/components/uv-tabs/uv-tabs")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.vue */ 329))
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
uvButton: function () {
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 338))
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 337))
},
uvEmpty: function () {
return Promise.all(/*! import() | uni_modules/uv-empty/components/uv-empty/uv-empty */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-empty/components/uv-empty/uv-empty")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-empty/components/uv-empty/uv-empty.vue */ 348))
return Promise.all(/*! import() | uni_modules/uv-empty/components/uv-empty/uv-empty */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-empty/components/uv-empty/uv-empty")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-empty/components/uv-empty/uv-empty.vue */ 347))
},
}
} catch (e) {
@ -134,7 +134,7 @@ var render = function () {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
var g0 = _vm.filteredActivities.length
var g0 = _vm.activities.length
_vm.$mp.data = Object.assign(
{},
{
@ -178,10 +178,32 @@ __webpack_require__.r(__webpack_exports__);
"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
@ -281,115 +303,74 @@ var _default = {
searchKeyword: '',
primaryActiveTab: 'current',
// current: 当前活动, past: 往期活动
params: {
pageNo: 1,
pageSize: 10,
title: '',
// 搜索关键字
// categoryId: null, // 分类的id
status: 0 // 活动的状态 0是当前 1是往期
},
secondaryActiveIndex: 0,
secondaryTabs: [{
name: '全部'
}, {
name: '品牌项目'
}, {
name: '公益活动'
}, {
name: '培训活动'
}],
// 模拟活动数据
activities: [{
id: 1,
title: '关爱自闭症儿童活动',
location: '长沙市雨花区时代阳光大道国际人才2145',
time: '2025/08/1-2025/09/01',
participants: 12,
maxParticipants: 30,
image: '/static/bannerImage.png',
tag: '30分',
tagColor: '#007AFF',
category: 'charity',
// all, brand, charity, training
status: 'current',
// current, past
isFullOrExpired: false
}, {
id: 2,
title: '社区环保志愿服务',
location: '长沙市岳麓区梅溪湖国际新城',
time: '2025/07/15-2025/07/20',
participants: 25,
maxParticipants: 40,
image: '/static/bannerImage.png',
tag: '20分',
tagColor: '#52C41A',
category: 'charity',
status: 'current',
isFullOrExpired: false
}, {
id: 3,
title: '青少年编程培训',
location: '长沙市开福区万达广场',
time: '2025/06/01-2025/06/30',
participants: 30,
maxParticipants: 30,
image: '/static/bannerImage.png',
tag: '50分',
tagColor: '#FF6B35',
category: 'training',
status: 'past',
isFullOrExpired: true
}, {
id: 4,
title: '品牌推广活动',
location: '长沙市天心区IFS国金中心',
time: '2025/05/10-2025/05/15',
participants: 18,
maxParticipants: 25,
image: '/static/bannerImage.png',
tag: '40分',
tagColor: '#722ED1',
category: 'brand',
status: 'past',
isFullOrExpired: true
}]
activities: []
};
},
computed: {
filteredActivities: function filteredActivities() {
var _this = this;
var filtered = this.activities;
// 根据一级tab筛选
filtered = filtered.filter(function (item) {
return item.status === _this.primaryActiveTab;
});
// 根据二级tab筛选
var categoryMap = {
0: 'all',
1: 'brand',
2: 'charity',
3: 'training'
};
var selectedCategory = categoryMap[this.secondaryActiveIndex];
if (selectedCategory !== 'all') {
filtered = filtered.filter(function (item) {
return item.category === selectedCategory;
});
}
// 根据搜索关键词筛选
if (this.searchKeyword.trim()) {
filtered = filtered.filter(function (item) {
return item.title.toLowerCase().includes(_this.searchKeyword.toLowerCase());
});
}
return filtered;
// 从store获取活动分类列表
categoryActivityList: function categoryActivityList() {
return this.$store.state.categoryActivityList || [];
}
},
methods: {
handleSearch: function handleSearch(value) {
if (value) {
this.params['title'] = value;
}
this.initData();
this.getActivityList();
},
// 切换一级tab
switchPrimaryTab: function switchPrimaryTab(tab) {
this.primaryActiveTab = tab;
this.initData();
delete this.params['categoryId'];
// 标签回到全部
this.secondaryActiveIndex = 0;
this.params['status'] = tab === 'current' ? 0 : 1;
this.getActivityList();
},
// 切换二级tab
switchSecondaryTab: function switchSecondaryTab(index) {
this.secondaryActiveIndex = index;
switchSecondaryTab: function switchSecondaryTab(index, tabName) {
var _arguments = arguments,
_this = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
var categoryId;
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
categoryId = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : null;
_this.initData();
_this.secondaryActiveIndex = index;
delete _this.params['categoryId'];
if (index === 0) {
// 全部Tab
console.log('点击了全部Tab');
} else {
// 活动分类Tab
_this.params['categoryId'] = categoryId;
}
_context.next = 7;
return _this.getActivityList();
case 7:
case "end":
return _context.stop();
}
}
}, _callee);
}))();
},
// 跳转到活动详情
goToActivityDetail: function goToActivityDetail(activity) {
@ -409,11 +390,90 @@ var _default = {
uni.navigateTo({
url: "/subPages/index/activityDetail?id=".concat(item.id)
});
},
// 获取活动列表
getActivityList: function getActivityList() {
var _this2 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
var res, _this2$activities;
return _regenerator.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return _this2.$api.activity.queryActivityList(_this2.params);
case 2:
res = _context2.sent;
if (res.result.records.length) {
(_this2$activities = _this2.activities).push.apply(_this2$activities, (0, _toConsumableArray2.default)(res.result.records));
_this2.params.pageNo++;
} else {
uni.showToast({
title: '暂无活动数据',
icon: 'none'
});
}
case 4:
case "end":
return _context2.stop();
}
}
}, _callee2);
}))();
},
initData: function initData() {
this.params['pageNo'] = 1;
this.activities = [];
}
},
onLoad: function onLoad() {
// 页面加载时的初始化逻辑
console.log('活动页面加载完成');
onShow: function onShow() {
var _this3 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
return _regenerator.default.wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
if (!(_this3.categoryActivityList.length === 0)) {
_context3.next = 3;
break;
}
_context3.next = 3;
return _this3.$store.dispatch('getCategoryActivityList');
case 3:
_this3.initData();
_this3.params['title'] = '';
_context3.next = 7;
return _this3.getActivityList();
case 7:
case "end":
return _context3.stop();
}
}
}, _callee3);
}))();
},
onReachBottom: function onReachBottom() {
this.getActivityList();
},
onPullDownRefresh: function onPullDownRefresh() {
var _this4 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
return _regenerator.default.wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
_this4.initData();
_context4.next = 3;
return _this4.getActivityList();
case 3:
uni.stopPullDownRefresh();
case 4:
case "end":
return _context4.stop();
}
}
}, _callee4);
}))();
}
};
exports.default = _default;


+ 2
- 1
unpackage/dist/dev/mp-weixin/pages/index/activity.json View File

@ -1,8 +1,9 @@
{
"navigationStyle": "custom",
"enablePullDownRefresh": true,
"usingComponents": {
"uv-search": "/uni_modules/uv-search/components/uv-search/uv-search",
"uv-icon": "/uni_modules/uv-icon/components/uv-icon/uv-icon",
"uv-tabs": "/uni_modules/uv-tabs/components/uv-tabs/uv-tabs",
"uv-button": "/uni_modules/uv-button/components/uv-button/uv-button",
"uv-empty": "/uni_modules/uv-empty/components/uv-empty/uv-empty"
}

+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/index/activity.wxml View File

@ -1 +1 @@
<view class="activity-page data-v-13e34265"><view class="search-section data-v-13e34265"><view class="search-bar data-v-13e34265"><uv-icon vue-id="68858b41-1" name="search" size="18" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><input class="search-input data-v-13e34265" type="text" placeholder="搜索活动名称" data-event-opts="{{[['input',[['__set_model',['','searchKeyword','$event',[]]]]]]}}" value="{{searchKeyword}}" bindinput="__e"/></view><view class="primary-tabs data-v-13e34265"><view data-event-opts="{{[['tap',[['switchPrimaryTab',['current']]]]]}}" class="{{['primary-tab-item','data-v-13e34265',(primaryActiveTab==='current')?'active':'']}}" bindtap="__e">当前活动</view><view data-event-opts="{{[['tap',[['switchPrimaryTab',['past']]]]]}}" class="{{['primary-tab-item','data-v-13e34265',(primaryActiveTab==='past')?'active':'']}}" bindtap="__e">往期活动</view></view></view><view class="secondary-tabs data-v-13e34265"><uv-tabs vue-id="68858b41-2" list="{{secondaryTabs}}" current="{{secondaryActiveIndex}}" lineColor="#007AFF" activeColor="#007AFF" inactiveColor="#666" lineWidth="{{30}}" lineHeight="{{3}}" itemStyle="padding: 10px 20px;" data-event-opts="{{[['^change',[['switchSecondaryTab']]]]}}" bind:change="__e" class="data-v-13e34265" bind:__l="__l"></uv-tabs></view><view class="activity-list data-v-13e34265"><block wx:for="{{filteredActivities}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['goToActivityDetail',['$0'],[[['filteredActivities','',index]]]]]]]}}" class="activity-item data-v-13e34265" bindtap="__e"><view class="activity-image data-v-13e34265"><image class="image data-v-13e34265" src="{{item.image}}" mode="aspectFill"></image></view><view class="activity-info data-v-13e34265"><view class="title-row data-v-13e34265"><view class="activity-tag data-v-13e34265" style="{{'background-color:'+(item.tagColor)+';'}}">{{''+item.tag+''}}</view><view class="activity-title data-v-13e34265">{{item.title}}</view></view><view class="activity-location data-v-13e34265"><uv-icon vue-id="{{'68858b41-3-'+index}}" name="map-fill" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="location-text data-v-13e34265">{{item.location}}</text></view><view class="activity-time data-v-13e34265"><uv-icon vue-id="{{'68858b41-4-'+index}}" name="calendar" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="time-text data-v-13e34265">{{item.time}}</text></view><view class="activity-participants data-v-13e34265"><uv-icon vue-id="{{'68858b41-5-'+index}}" name="account-fill" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="participants-text data-v-13e34265">{{"报名人数:"+item.participants+"/"+item.maxParticipants}}</text></view></view><view class="activity-action data-v-13e34265"><uv-button vue-id="{{'68858b41-6-'+index}}" type="primary" size="mini" shape="circle" text="{{item.isFullOrExpired?'已结束':'报名中'}}" disabled="{{item.isFullOrExpired}}" data-event-opts="{{[['^click',[['signUpActivity',['$0'],[[['filteredActivities','',index]]]]]]]}}" catch:click="__e" class="data-v-13e34265" bind:__l="__l"></uv-button></view></view></block></view><block wx:if="{{$root.g0===0}}"><view class="empty-state data-v-13e34265"><uv-empty vue-id="68858b41-7" mode="data" text="暂无活动数据" class="data-v-13e34265" bind:__l="__l"></uv-empty></view></block></view>
<view class="activity-page data-v-13e34265"><view class="search-section data-v-13e34265"><view class="search-bar data-v-13e34265"><uv-search vue-id="68858b41-1" placeholder="请输入搜索内容" showAction="{{false}}" value="{{params.title}}" data-event-opts="{{[['^search',[['handleSearch']]],['^clear',[['handleSearch']]],['^clickIcon',[['handleSearch']]],['^input',[['__set_model',['$0','title','$event',[]],['params']]]]]}}" bind:search="__e" bind:clear="__e" bind:clickIcon="__e" bind:input="__e" class="data-v-13e34265" bind:__l="__l"></uv-search></view><view class="primary-tabs data-v-13e34265"><view data-event-opts="{{[['tap',[['switchPrimaryTab',['current']]]]]}}" class="{{['primary-tab-item','data-v-13e34265',(primaryActiveTab==='current')?'active':'']}}" bindtap="__e">当前活动</view><view data-event-opts="{{[['tap',[['switchPrimaryTab',['past']]]]]}}" class="{{['primary-tab-item','data-v-13e34265',(primaryActiveTab==='past')?'active':'']}}" bindtap="__e">往期活动</view></view></view><view class="secondary-tabs data-v-13e34265"><scroll-view class="tab-scroll data-v-13e34265" scroll-x="true"><view class="tab-list data-v-13e34265"><view data-event-opts="{{[['tap',[['switchSecondaryTab',[0,'全部']]]]]}}" class="{{['tab-item','data-v-13e34265',(secondaryActiveIndex===0)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-13e34265">全部</text></view><block wx:for="{{categoryActivityList}}" wx:for-item="category" wx:for-index="index" wx:key="id"><view data-event-opts="{{[['tap',[['switchSecondaryTab',[index+1,'$0','$1'],[[['categoryActivityList','id',category.id,'title']],[['categoryActivityList','id',category.id,'id']]]]]]]}}" class="{{['tab-item','data-v-13e34265',(secondaryActiveIndex===index+1)?'active':'']}}" bindtap="__e"><text class="tab-text data-v-13e34265">{{category.title}}</text></view></block></view></scroll-view></view><view class="activity-list data-v-13e34265"><block wx:for="{{activities}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['goToActivityDetail',['$0'],[[['activities','',index]]]]]]]}}" class="activity-item data-v-13e34265" bindtap="__e"><view class="activity-image data-v-13e34265"><image class="image data-v-13e34265" src="{{item.image}}" mode="aspectFill"></image></view><view class="activity-info data-v-13e34265"><view class="title-row data-v-13e34265"><view class="activity-tag data-v-13e34265" style="{{'background-color:'+(item.tagColor)+';'}}">{{''+item.score+'分'}}</view><view class="activity-title data-v-13e34265">{{item.title}}</view></view><view class="activity-location data-v-13e34265"><uv-icon vue-id="{{'68858b41-2-'+index}}" name="map-fill" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="location-text data-v-13e34265">{{item.address}}</text></view><view class="activity-time data-v-13e34265"><uv-icon vue-id="{{'68858b41-3-'+index}}" name="calendar" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="time-text data-v-13e34265">{{item.createTime}}</text></view><view class="activity-participants data-v-13e34265"><uv-icon vue-id="{{'68858b41-4-'+index}}" name="account-fill" size="14" color="#999" class="data-v-13e34265" bind:__l="__l"></uv-icon><text class="participants-text data-v-13e34265">{{"报名人数:"+item.numActivity+"/"+item.numLimit}}</text></view></view><view class="activity-action data-v-13e34265"><block wx:if="{{item.status==='1'}}"><uv-button vue-id="{{'68858b41-5-'+index}}" type="primary" size="mini" shape="circle" text="已结束" disabled="{{true}}" data-event-opts="{{[['^click',[['signUpActivity',['$0'],[[['activities','',index]]]]]]]}}" catch:click="__e" class="data-v-13e34265" bind:__l="__l"></uv-button></block><block wx:else><block wx:if="{{item.isApply===1}}"><uv-button vue-id="{{'68858b41-6-'+index}}" type="primary" size="mini" shape="circle" text="已报名" disabled="{{true}}" data-event-opts="{{[['^click',[['signUpActivity',['$0'],[[['activities','',index]]]]]]]}}" catch:click="__e" class="data-v-13e34265" bind:__l="__l"></uv-button></block><block wx:else><uv-button vue-id="{{'68858b41-7-'+index}}" type="primary" size="mini" shape="circle" text="{{item.numActivity>=item.numLimit?'已结束':'报名中'}}" disabled="{{item.numActivity>=item.numLimit}}" data-event-opts="{{[['^click',[['signUpActivity',['$0'],[[['activities','',index]]]]]]]}}" catch:click="__e" class="data-v-13e34265" bind:__l="__l"></uv-button></block></block></view></view></block></view><block wx:if="{{$root.g0===0}}"><view class="empty-state data-v-13e34265"><uv-empty vue-id="68858b41-8" mode="data" text="暂无活动数据" class="data-v-13e34265" bind:__l="__l"></uv-empty></view></block></view>

+ 38
- 9
unpackage/dist/dev/mp-weixin/pages/index/activity.wxss View File

@ -37,15 +37,7 @@
/* 确保padding包含在高度内 */
}
.search-bar.data-v-13e34265 {
background-color: white;
border-radius: 50rpx;
padding: 20rpx 30rpx;
display: flex;
align-items: center;
gap: 20rpx;
width: 85%;
margin: 0 auto;
/* 移除margin-top,只保留左右居中和下边距 */
padding: 5rpx 40rpx;
}
.search-input.data-v-13e34265 {
flex: 1;
@ -71,6 +63,7 @@
color: #000000;
/* 白色半透明 */
position: relative;
transition: color 0.3s ease;
}
.primary-tab-item.active.data-v-13e34265 {
color: white;
@ -93,6 +86,42 @@
.secondary-tabs.data-v-13e34265 {
background-color: white;
border-bottom: 1px solid #f0f0f0;
position: relative;
}
.secondary-tabs .tab-scroll.data-v-13e34265 {
white-space: nowrap;
}
.secondary-tabs .tab-scroll .tab-list.data-v-13e34265 {
display: flex;
justify-content: space-evenly;
}
.secondary-tabs .tab-scroll .tab-list .tab-item.data-v-13e34265 {
flex-shrink: 0;
padding: 24rpx 32rpx;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}
.secondary-tabs .tab-scroll .tab-list .tab-item .tab-text.data-v-13e34265 {
font-size: 28rpx;
color: #666666;
font-weight: 500;
transition: color 0.3s ease;
}
.secondary-tabs .tab-scroll .tab-list .tab-item.active .tab-text.data-v-13e34265 {
color: #007AFF;
font-weight: 600;
}
.secondary-tabs .tab-scroll .tab-line.data-v-13e34265 {
position: absolute;
bottom: 10;
height: 6rpx;
background-color: #007AFF;
border-radius: 3rpx;
transition: -webkit-transform 0.3s ease;
transition: transform 0.3s ease;
transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.activity-list.data-v-13e34265 {
padding: 20rpx;


+ 4
- 4
unpackage/dist/dev/mp-weixin/pages/index/community.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _community_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./community.vue?vue&type=script&lang=js& */ 81);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _community_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _community_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _community_vue_vue_type_style_index_0_id_ed0edcfa_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./community.vue?vue&type=style&index=0&id=ed0edcfa&lang=scss&scoped=true& */ 83);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -101,7 +101,7 @@ var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
}
} catch (e) {
@ -187,9 +187,9 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//


+ 1
- 0
unpackage/dist/dev/mp-weixin/pages/index/community.json View File

@ -1,5 +1,6 @@
{
"navigationBarTitleText": "社区",
"enablePullDownRefresh": true,
"usingComponents": {
"uv-icon": "/uni_modules/uv-icon/components/uv-icon/uv-icon"
}

+ 1
- 1
unpackage/dist/dev/mp-weixin/pages/index/index.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.vue?vue&type=script&lang=js& */ 57);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _index_vue_vue_type_style_index_0_id_57280228_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.vue?vue&type=style&index=0&id=57280228&lang=scss&scoped=true& */ 59);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs


+ 1
- 0
unpackage/dist/dev/mp-weixin/pages/index/index.json View File

@ -1,5 +1,6 @@
{
"navigationStyle": "custom",
"enablePullDownRefresh": true,
"usingComponents": {
"volunteer-header": "/pages/components/index/VolunteerHeader",
"volunteer-ranking": "/pages/components/index/VolunteerRanking",


+ 4
- 4
unpackage/dist/dev/mp-weixin/pages/index/my.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _my_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./my.vue?vue&type=script&lang=js& */ 89);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _my_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _my_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _my_vue_vue_type_style_index_0_id_810f65fc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./my.vue?vue&type=style&index=0&id=810f65fc&lang=scss&scoped=true& */ 91);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -101,7 +101,7 @@ var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
}
} catch (e) {
@ -165,8 +165,8 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//


+ 3
- 3
unpackage/dist/dev/mp-weixin/pages/index/shop.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _shop_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./shop.vue?vue&type=script&lang=js& */ 65);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _shop_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _shop_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _shop_vue_vue_type_style_index_0_id_1d0cadcc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./shop.vue?vue&type=style&index=0&id=1d0cadcc&lang=scss&scoped=true& */ 67);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -142,8 +142,8 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 36));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 38));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
var HomePageNav = function HomePageNav() {
__webpack_require__.e(/*! require.ensure | pages/components/HomePageNav */ "pages/components/HomePageNav").then((function () {
return resolve(__webpack_require__(/*! @/pages/components/HomePageNav.vue */ 290));


+ 1
- 0
unpackage/dist/dev/mp-weixin/project.config.json View File

@ -11,6 +11,7 @@
"minified": false,
"newFeature": true,
"bigPackageSizeSupport": true,
"ignoreUploadUnusedFiles": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],


+ 94
- 43
unpackage/dist/dev/mp-weixin/subPages/community/publishPost.js View File

@ -34,7 +34,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _publishPost_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./publishPost.vue?vue&type=script&lang=js& */ 186);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _publishPost_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _publishPost_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _publishPost_vue_vue_type_style_index_0_id_48dc3ccc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./publishPost.vue?vue&type=style&index=0&id=48dc3ccc&lang=scss&scoped=true& */ 188);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
/* harmony import */ var _D_HBuilderX_4_29_2024093009_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 35);
var renderjs
@ -101,10 +101,10 @@ var components
try {
components = {
uvIcon: function () {
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 311))
return Promise.all(/*! import() | uni_modules/uv-icon/components/uv-icon/uv-icon */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-icon/components/uv-icon/uv-icon")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-icon/components/uv-icon/uv-icon.vue */ 328))
},
uvButton: function () {
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 338))
return Promise.all(/*! import() | uni_modules/uv-button/components/uv-button/uv-button */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uv-button/components/uv-button/uv-button")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uv-button/components/uv-button/uv-button.vue */ 337))
},
}
} catch (e) {
@ -128,9 +128,9 @@ var render = function () {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
var g0 = _vm.messageContent.length
var g1 = _vm.selectedImages.length
var g2 = _vm.messageContent.trim()
var g0 = _vm.content.length
var g1 = _vm.image.length
var g2 = _vm.content.trim()
_vm.$mp.data = Object.assign(
{},
{
@ -181,7 +181,8 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 30));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 32));
//
//
//
@ -263,62 +264,112 @@ var _default = {
name: 'PublishPost',
data: function data() {
return {
messageContent: '',
selectedImages: [],
content: '',
image: [],
isPhoto: false
};
},
methods: {
chooseImage: function chooseImage() {
var _this = this;
var remainingCount = 9 - this.selectedImages.length;
uni.chooseMedia({
count: remainingCount,
mediaType: ['image'],
var remainingCount = 9 - this.image.length;
uni.chooseImage({
count: 1,
sourceType: ['album', 'camera'],
success: function success(res) {
var tempFiles = res.tempFiles.map(function (file) {
return file.tempFilePath;
});
_this.selectedImages = [].concat((0, _toConsumableArray2.default)(_this.selectedImages), (0, _toConsumableArray2.default)(tempFiles));
},
success: function () {
var _success = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(res) {
var file, uploadRes;
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
// const tempFiles = res.tempFiles.map(file => file.tempFilePath)
// this.image = [...this.image, ...tempFiles]
// console.log(...res.tempFilePaths);
file = {
path: res.tempFilePaths[0]
};
_context.next = 3;
return _this.$utils.uploadImage(file);
case 3:
uploadRes = _context.sent;
_this.image.push(uploadRes.url);
uni.showToast({
title: '图片上传成功',
icon: 'success'
});
case 6:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function success(_x) {
return _success.apply(this, arguments);
}
return success;
}(),
fail: function fail(err) {
console.error('选择图片失败:', err);
}
});
},
removeImage: function removeImage(index) {
this.selectedImages.splice(index, 1);
this.image.splice(index, 1);
},
submitPost: function submitPost() {
if (!this.messageContent.trim()) {
uni.showToast({
title: '请输入留言内容',
icon: 'none'
});
return;
}
// 模拟提交
uni.showLoading({
title: '提交中...'
});
setTimeout(function () {
uni.hideLoading();
uni.showToast({
title: '提交成功,等待审核',
icon: 'success'
});
setTimeout(function () {
uni.navigateBack();
}, 1500);
}, 2000);
var _this2 = this;
return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
var res;
return _regenerator.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
if (_this2.content.trim()) {
_context2.next = 3;
break;
}
uni.showToast({
title: '请输入留言内容',
icon: 'none'
});
return _context2.abrupt("return");
case 3:
_context2.next = 5;
return _this2.$api.community.addPost({
content: _this2.content,
image: _this2.image.toString(),
type: _this2.isPhoto ? 1 : 0
});
case 5:
res = _context2.sent;
if (res.code === 200) {
uni.showToast({
title: '提交成功',
icon: 'success'
});
setTimeout(function () {
uni.navigateBack();
}, 1000);
} else {
uni.showToast({
title: "".concat(res.message),
icon: 'none'
});
}
case 7:
case "end":
return _context2.stop();
}
}
}, _callee2);
}))();
}
},
onLoad: function onLoad(options) {
if (options.page === 'photo') {
this.isPhoto = true;
console.log(this.isPhoto);
}
}
};


+ 1
- 1
unpackage/dist/dev/mp-weixin/subPages/community/publishPost.wxml View File

@ -1 +1 @@
<view class="publish-page data-v-48dc3ccc"><view class="tip-container data-v-48dc3ccc"><uv-icon vue-id="5aa8448c-1" name="info-circle-fill" size="16" color="#007AFF" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon><text class="tip-text data-v-48dc3ccc">留言板内容要经过审核才能发布成功,提交审核中请耐心等待,审核通过后会上线!</text></view><view class="main-container data-v-48dc3ccc"><view class="title-section data-v-48dc3ccc"><view class="{{['vertical-line','data-v-48dc3ccc',isPhoto?'red':'blue']}}"></view><text class="title-text data-v-48dc3ccc">{{''+(isPhoto?'木龄见':'木龄说')+''}}</text></view><view class="message-section data-v-48dc3ccc"><text class="section-label data-v-48dc3ccc">您对本社区发展有什么建议和期待,欢迎留言</text><view class="textarea-container data-v-48dc3ccc"><textarea class="message-textarea data-v-48dc3ccc" placeholder="请输入您的留言内容..." maxlength="500" show-confirm-bar="{{false}}" data-event-opts="{{[['input',[['__set_model',['','messageContent','$event',[]]]]]]}}" value="{{messageContent}}" bindinput="__e"></textarea><view class="char-count data-v-48dc3ccc"><text class="count-text data-v-48dc3ccc">{{$root.g0+"/500"}}</text></view></view></view><view class="image-section data-v-48dc3ccc"><view class="image-grid data-v-48dc3ccc"><block wx:for="{{selectedImages}}" wx:for-item="image" wx:for-index="index" wx:key="index"><view class="image-item data-v-48dc3ccc"><image class="preview-image data-v-48dc3ccc" src="{{image}}" mode="aspectFill"></image><view data-event-opts="{{[['tap',[['removeImage',[index]]]]]}}" class="delete-btn data-v-48dc3ccc" bindtap="__e"><uv-icon vue-id="{{'5aa8448c-2-'+index}}" name="close" size="12" color="white" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon></view></view></block><block wx:if="{{$root.g1<9}}"><view data-event-opts="{{[['tap',[['chooseImage',['$event']]]]]}}" class="add-image-btn data-v-48dc3ccc" bindtap="__e"><uv-icon vue-id="5aa8448c-3" name="plus" size="24" color="#999" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon><text class="add-text data-v-48dc3ccc">添加图片</text></view></block></view></view></view><view class="submit-container data-v-48dc3ccc"><uv-button class="submit-btn data-v-48dc3ccc" vue-id="5aa8448c-4" type="primary" shape="circle" disabled="{{!$root.g2}}" data-event-opts="{{[['^click',[['submitPost']]]]}}" bind:click="__e" bind:__l="__l" vue-slots="{{['default']}}">提交审核</uv-button></view></view>
<view class="publish-page data-v-48dc3ccc"><view class="tip-container data-v-48dc3ccc"><uv-icon vue-id="5aa8448c-1" name="info-circle-fill" size="16" color="#007AFF" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon><text class="tip-text data-v-48dc3ccc">留言板内容要经过审核才能发布成功,提交审核中请耐心等待,审核通过后会上线!</text></view><view class="main-container data-v-48dc3ccc"><view class="title-section data-v-48dc3ccc"><view class="{{['vertical-line','data-v-48dc3ccc',isPhoto?'red':'blue']}}"></view><text class="title-text data-v-48dc3ccc">{{''+(isPhoto?'木龄见':'木龄说')+''}}</text></view><view class="message-section data-v-48dc3ccc"><text class="section-label data-v-48dc3ccc">您对本社区发展有什么建议和期待,欢迎留言</text><view class="textarea-container data-v-48dc3ccc"><textarea class="message-textarea data-v-48dc3ccc" placeholder="请输入您的留言内容..." maxlength="500" show-confirm-bar="{{false}}" data-event-opts="{{[['input',[['__set_model',['','content','$event',[]]]]]]}}" value="{{content}}" bindinput="__e"></textarea><view class="char-count data-v-48dc3ccc"><text class="count-text data-v-48dc3ccc">{{$root.g0+"/500"}}</text></view></view></view><view class="image-section data-v-48dc3ccc"><view class="image-grid data-v-48dc3ccc"><block wx:for="{{image}}" wx:for-item="image" wx:for-index="index" wx:key="index"><view class="image-item data-v-48dc3ccc"><image class="preview-image data-v-48dc3ccc" src="{{image}}" mode="aspectFill"></image><view data-event-opts="{{[['tap',[['removeImage',[index]]]]]}}" class="delete-btn data-v-48dc3ccc" bindtap="__e"><uv-icon vue-id="{{'5aa8448c-2-'+index}}" name="close" size="12" color="white" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon></view></view></block><block wx:if="{{$root.g1<9}}"><view data-event-opts="{{[['tap',[['chooseImage',['$event']]]]]}}" class="add-image-btn data-v-48dc3ccc" bindtap="__e"><uv-icon vue-id="5aa8448c-3" name="plus" size="24" color="#999" class="data-v-48dc3ccc" bind:__l="__l"></uv-icon><text class="add-text data-v-48dc3ccc">添加图片</text></view></block></view></view></view><view class="submit-container data-v-48dc3ccc"><uv-button class="submit-btn data-v-48dc3ccc" vue-id="5aa8448c-4" type="primary" shape="circle" disabled="{{!$root.g2}}" data-event-opts="{{[['^click',[['submitPost']]]]}}" bind:click="__e" bind:__l="__l" vue-slots="{{['default']}}">提交审核</uv-button></view></view>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save