|
@@ -1,4 +1,4 @@
|
|
|
-import { defineComponent, onMounted, reactive, ref, nextTick } from 'vue';
|
|
|
+import { defineComponent, onMounted, reactive, ref, nextTick, onUnmounted } from 'vue';
|
|
|
import styles from './index.module.less';
|
|
|
import { List, Popup, DatePicker, Popover, Field, Picker, } from 'vant';
|
|
|
import request from '@/helpers/request';
|
|
@@ -93,7 +93,6 @@ export default defineComponent({
|
|
|
{
|
|
|
data: {
|
|
|
tenantId: forms.tenantId,
|
|
|
- schoolName: forms.schoolName,
|
|
|
provinceCode,
|
|
|
cityCode,
|
|
|
districtCode: regionCode,
|
|
@@ -103,16 +102,24 @@ export default defineComponent({
|
|
|
forms.totalInfo = res.data|| {}
|
|
|
nextTick(() => {
|
|
|
let percentage = 0;
|
|
|
- const interval = setInterval(() => {
|
|
|
+ state.intervalOne = setInterval(() => {
|
|
|
if (percentage <= forms.totalInfo.supportRate) {
|
|
|
+ // console.log(percentage,forms.totalInfo.supportRate)
|
|
|
drawCircle('circle1', 1, percentage)
|
|
|
}
|
|
|
if (percentage <= forms.totalInfo.participationRate) {
|
|
|
drawCircle('circle2', 2, percentage)
|
|
|
}
|
|
|
- percentage += 2; // 每次增加1%
|
|
|
+ if (percentage === Math.floor(Number(forms.totalInfo.supportRate))) {
|
|
|
+ drawCircle('circle1', 1, forms.totalInfo.supportRate)
|
|
|
+ }
|
|
|
+ if (percentage === Math.floor(Number(forms.totalInfo.participationRate))) {
|
|
|
+ drawCircle('circle2', 2, forms.totalInfo.participationRate)
|
|
|
+ }
|
|
|
+ percentage += 1; // 每次增加1%
|
|
|
if (percentage > Math.max(forms.totalInfo.supportRate, forms.totalInfo.participationRate)) {
|
|
|
- clearInterval(interval); // 停止定时器
|
|
|
+ clearInterval(state.intervalOne); // 停止定时器
|
|
|
+ state.intervalOne = null;
|
|
|
}
|
|
|
}, 25); // 每25ms更新一次
|
|
|
});
|
|
@@ -151,11 +158,12 @@ export default defineComponent({
|
|
|
const state = reactive({
|
|
|
saveLoading: false,
|
|
|
image: null as any,
|
|
|
- shareLoading: false
|
|
|
+ shareLoading: false,
|
|
|
+ intervalOne: null as any,
|
|
|
});
|
|
|
|
|
|
const skipDetail = (id: any) => {
|
|
|
- sessionStorage.setItem('areaIdx', forms.areaIdx)
|
|
|
+ // sessionStorage.setItem('areaIdx', forms.areaIdx)
|
|
|
sessionStorage.setItem('qsFilterParams', JSON.stringify({
|
|
|
schoolName: forms.schoolName,
|
|
|
sortType: forms.sortType,
|
|
@@ -204,6 +212,9 @@ export default defineComponent({
|
|
|
|
|
|
const onRefresh = async () => {
|
|
|
console.log('刷新111')
|
|
|
+ clearInterval(state.intervalOne); // 停止定时器
|
|
|
+ state.intervalOne = null;
|
|
|
+ forms.areaColumns = []
|
|
|
finished.value = false;
|
|
|
// 重新加载数据
|
|
|
// 将 loading 设置为 true,表示处于加载状态
|
|
@@ -215,6 +226,7 @@ export default defineComponent({
|
|
|
onMounted(async () => {
|
|
|
console.log('刷新页面')
|
|
|
forms.areaIdx = sessionStorage.getItem('areaIdx') || 0;
|
|
|
+ // @ts-ignore
|
|
|
const qsFilterParams: any = sessionStorage.getItem('qsFilterParams') ? JSON.parse(sessionStorage.getItem('qsFilterParams')) : {};
|
|
|
forms.schoolName = qsFilterParams.schoolName || ''
|
|
|
forms.sortField = qsFilterParams.sortField || 'totalNum'
|
|
@@ -225,6 +237,11 @@ export default defineComponent({
|
|
|
});
|
|
|
});
|
|
|
|
|
|
+ onUnmounted(() => {
|
|
|
+ clearInterval(state.intervalOne); // 停止定时器
|
|
|
+ state.intervalOne = null;
|
|
|
+ });
|
|
|
+
|
|
|
return () => (
|
|
|
<OFullRefresh
|
|
|
v-model:modelValue={refreshing.value}
|
|
@@ -343,7 +360,7 @@ export default defineComponent({
|
|
|
<ul class={styles.itemContent}>
|
|
|
<li>
|
|
|
<div class={styles.icTop}>
|
|
|
- <span class={styles.sRed}>{formatNumberWithComma(item.supportNum || 0)}</span><i>人</i>
|
|
|
+ <span class={styles.sBlue}>{formatNumberWithComma(item.supportNum || 0)}</span><i>人</i>
|
|
|
</div>
|
|
|
<p>支持开展</p>
|
|
|
</li>
|
|
@@ -403,6 +420,7 @@ export default defineComponent({
|
|
|
forms.areaStatus = false;
|
|
|
forms.schoolName = '';
|
|
|
forms.currentAreaInfo = forms.areaList[val.selectedOptions[0].value]
|
|
|
+ sessionStorage.setItem('areaIdx', forms.areaIdx)
|
|
|
queryInfo()
|
|
|
getList()
|
|
|
console.log('选择1111',val,forms.areaOptionIndex)
|
|
@@ -416,4 +434,4 @@ export default defineComponent({
|
|
|
</OFullRefresh>
|
|
|
);
|
|
|
}
|
|
|
-});
|
|
|
+});
|