3.25提交
This commit is contained in:
+46
-34
@@ -22,7 +22,7 @@
|
||||
|
||||
<view class="divider"></view>
|
||||
<view class="filter-item" @click="showFilterPopup">
|
||||
<text :class="{active: keywords}">筛选</text>
|
||||
<text :class="{ active: keywords }">筛选</text>
|
||||
<up-image
|
||||
:src="keywords ? filterOn : filter"
|
||||
width="36rpx"
|
||||
@@ -50,12 +50,20 @@
|
||||
:errorIcon="lazyImg"
|
||||
:lazy-load="true"
|
||||
>
|
||||
<template #error>
|
||||
<image :src="lazyImg" class="category-icon" mode="widthFix"></image>
|
||||
</template>
|
||||
<template v-slot:loading>
|
||||
<image :src="lazyImg" class="category-icon" mode="widthFix"></image>
|
||||
</template>
|
||||
<template #error>
|
||||
<image
|
||||
:src="lazyImg"
|
||||
class="category-icon"
|
||||
mode="widthFix"
|
||||
></image>
|
||||
</template>
|
||||
<template v-slot:loading>
|
||||
<image
|
||||
:src="lazyImg"
|
||||
class="category-icon"
|
||||
mode="widthFix"
|
||||
></image>
|
||||
</template>
|
||||
</up-image>
|
||||
</view>
|
||||
<view class="item-content">
|
||||
@@ -293,7 +301,7 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, onMounted } from "vue";
|
||||
import { onShow, onBackPress,onLoad} from "@dcloudio/uni-app";
|
||||
import { onShow, onBackPress, onLoad } from "@dcloudio/uni-app";
|
||||
import upImg from "@/static/cb_up.png";
|
||||
import downImg from "@/static/cb_up.png";
|
||||
import filter from "@/static/cb_screen_no.png";
|
||||
@@ -341,9 +349,7 @@ onBackPress(() => {
|
||||
return true;
|
||||
});
|
||||
// 页面加载
|
||||
onMounted(() => {
|
||||
|
||||
});
|
||||
onMounted(() => {});
|
||||
const showFilter = ref(false);
|
||||
// 筛选弹窗相关方法
|
||||
const showFilterPopup = () => {
|
||||
@@ -395,32 +401,40 @@ const confirmFilter = throttle(() => {
|
||||
isFilterActive.value = true;
|
||||
hideFilterPopup();
|
||||
const selectedTags = filterTags.value.filter((tag) => tag.selected);
|
||||
let words="";
|
||||
let words = "";
|
||||
console.log("选中的筛选标签:", selectedTags);
|
||||
for (let i = 0; i < selectedTags.length; i++) {
|
||||
if (words) {
|
||||
words += "," + selectedTags[i].NAME;
|
||||
} else {
|
||||
words= selectedTags[i].NAME;
|
||||
words = selectedTags[i].NAME;
|
||||
}
|
||||
}
|
||||
keywords.value=words;
|
||||
if(!keywords.value) return;
|
||||
console.log(1111111);
|
||||
console.log('看看执行了几次');
|
||||
navTo({
|
||||
url: "/pages_app/hot/hot?keywords="+encodeURIComponent(keywords.value)
|
||||
});
|
||||
|
||||
keywords.value = words;
|
||||
if (!keywords.value) return;
|
||||
console.log(1111111);
|
||||
console.log("看看执行了几次");
|
||||
navTo({
|
||||
url: "/pages_app/hot/hot?keywords=" + encodeURIComponent(keywords.value),
|
||||
});
|
||||
|
||||
// 根据选中的标签重新加载数据
|
||||
},1000);
|
||||
}, 1000);
|
||||
onLoad(() => {
|
||||
loadGuideTypes();
|
||||
loadSearchLibrary();
|
||||
loadGuideTags();
|
||||
uni.sendNativeEvent("portraitReport",{
|
||||
msg:{
|
||||
event_nickname: "list_page",
|
||||
page_type: "诊疗指南",
|
||||
},
|
||||
},
|
||||
(ret) => {
|
||||
console.log(ret);
|
||||
});
|
||||
});
|
||||
onShow(() => {
|
||||
});
|
||||
onShow(() => {});
|
||||
|
||||
// 加载指南分类(guideType)
|
||||
const loadGuideTypes = async () => {
|
||||
@@ -458,14 +472,13 @@ const loadGuideTags = async () => {
|
||||
const res = await api.guideTag({
|
||||
type: 3,
|
||||
});
|
||||
|
||||
|
||||
if (res && res.code === 200 && res.data) {
|
||||
// 将API返回的标签数据转换为筛选标签格式
|
||||
filterTags.value = res.data.map((tag) => ({
|
||||
...tag,
|
||||
selected: false,
|
||||
}));
|
||||
|
||||
}
|
||||
} catch (e) {
|
||||
console.error("加载指南标签失败:", e);
|
||||
@@ -670,7 +683,7 @@ $accent-color: #4a90e2;
|
||||
gap: 5px;
|
||||
|
||||
.search-text {
|
||||
font-size:36rpx;
|
||||
font-size: 36rpx;
|
||||
color: $gray-medium;
|
||||
}
|
||||
}
|
||||
@@ -690,13 +703,12 @@ $accent-color: #4a90e2;
|
||||
gap: 3px;
|
||||
font-size: 36rpx;
|
||||
color: #999;
|
||||
text{
|
||||
margin-top:-1rpx;
|
||||
text {
|
||||
margin-top: -1rpx;
|
||||
&.active {
|
||||
color: #8b2316;
|
||||
color: #8b2316;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1148,7 +1160,7 @@ $accent-color: #4a90e2;
|
||||
.filter-tags {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
|
||||
margin-bottom: 60rpx;
|
||||
max-height: 65vh;
|
||||
overflow-y: auto;
|
||||
@@ -1159,7 +1171,7 @@ $accent-color: #4a90e2;
|
||||
padding: 8rpx 0; /* 去掉左右padding,仅保留上下 */
|
||||
border-radius: 30rpx;
|
||||
font-size: 26rpx;
|
||||
margin:8rpx 5rpx;
|
||||
margin: 8rpx 5rpx;
|
||||
border: 2rpx solid #efefef;
|
||||
transition: all 0.3s ease;
|
||||
width: 152rpx; /* 固定宽度 */
|
||||
|
||||
Reference in New Issue
Block a user