|
|
@@ -44,13 +44,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
onLoad(options) {
|
|
|
- // 检查 URL 参数,如果需要滚动到搜索框
|
|
|
- if (options.scrollToSearch === '1') {
|
|
|
- // 延迟执行,确保页面已经加载完成
|
|
|
- setTimeout(() => {
|
|
|
- this.scrollToSearch();
|
|
|
- }, 1000);
|
|
|
- }
|
|
|
+
|
|
|
},
|
|
|
onReady() {
|
|
|
// 初始化数据
|
|
|
@@ -196,11 +190,20 @@ export default {
|
|
|
},
|
|
|
// 处理签到
|
|
|
handleSign(index) {
|
|
|
+ var _this = this;
|
|
|
signPoint({
|
|
|
cityCode: uni.getStorageSync('selectCitycode'),
|
|
|
}).then(res => {
|
|
|
if (res.data.code === 200) {
|
|
|
- this.signData[index].status = 1;
|
|
|
+ _this.signData[index].status = 1;
|
|
|
+ _this.$refs.uNotify.show({
|
|
|
+ top: 1,
|
|
|
+ type: 'success',
|
|
|
+ message: '今日签到成功,继续加油哦!!!',
|
|
|
+ duration: 1000 * 3,
|
|
|
+ fontSize: 14,
|
|
|
+ safeAreaInsetTop:true
|
|
|
+ })
|
|
|
}
|
|
|
}).catch(error => {
|
|
|
console.error('签到失败:', error);
|
|
|
@@ -218,48 +221,13 @@ export default {
|
|
|
url: '/points/order/orderList'
|
|
|
});
|
|
|
},
|
|
|
- // 滚动到搜索框
|
|
|
- scrollToSearch() {
|
|
|
- // 滚动到商品列表的位置,使搜索框显示在顶部
|
|
|
- let scrollDistance = 470; // 默认值,作为兜底
|
|
|
-
|
|
|
- // 尝试获取积分任务区域的实际高度
|
|
|
- try {
|
|
|
- // 获取积分任务区域的元素
|
|
|
- const taskArea = this.$el.querySelector('.points-task');
|
|
|
- if (taskArea) {
|
|
|
- // 获取元素的实际高度
|
|
|
- const rect = taskArea.getBoundingClientRect();
|
|
|
- scrollDistance = rect.height - 10;
|
|
|
- }
|
|
|
- } catch (error) {
|
|
|
- console.error('获取任务区域高度失败:', error);
|
|
|
- }
|
|
|
-
|
|
|
- if (process.env.UNI_PLATFORM === 'h5') {
|
|
|
- // 在H5端使用元素的scrollTop
|
|
|
- const homeEl = this.$el;
|
|
|
- if (homeEl) {
|
|
|
- homeEl.scrollTop = scrollDistance;
|
|
|
- // 更新滚动距离
|
|
|
- this.scrollTop = scrollDistance;
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 在非H5端使用uni.pageScrollTo
|
|
|
- uni.pageScrollTo({
|
|
|
- scrollTop: scrollDistance,
|
|
|
- duration: 300
|
|
|
- });
|
|
|
- // 更新滚动距离
|
|
|
- this.scrollTop = scrollDistance;
|
|
|
- }
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
<view class="points-home" ref="homeRef">
|
|
|
+ <u-notify ref="uNotify" message=""></u-notify>
|
|
|
<view class="points-task">
|
|
|
<!-- 积分头部 -->
|
|
|
<view class="points-header" @click="goBillPage">
|
|
|
@@ -274,7 +242,7 @@ export default {
|
|
|
<!-- 签到组件 -->
|
|
|
<SignIn @sign="handleSign" :signData="signData" :loading="loading.sign"/>
|
|
|
<!-- 任务组件 -->
|
|
|
- <TaskList :taskData="taskData" @scrollToSearch="scrollToSearch" :loading="loading.task"/>
|
|
|
+ <TaskList :taskData="taskData" :loading="loading.task"/>
|
|
|
</view>
|
|
|
<!-- 商品列表组件 -->
|
|
|
<ProductList ref="productRef" :scrollTop="scrollTop" />
|