diff --git a/components/DropDown/DropDown.vue b/components/DropDown/DropDown.vue
index 12c017a..a23fa7b 100644
--- a/components/DropDown/DropDown.vue
+++ b/components/DropDown/DropDown.vue
@@ -15,7 +15,13 @@
-
+
@@ -30,23 +36,22 @@
components: {
DropDownItem
},
- props: {
- postlist: {
- type: Array,
- default () {
- return [
- ['全部', '餐饮美食', '百货超市', '美容美发'],
- ['区域1', '区域2', '区域3', '区域4'],
- ['100m2', '200m2', '300m2'],
- ['附近的', '最新发布的', '其他']
- ]
- }
- }
- },
data() {
return {
title: ['行业', '区域', '面积', '筛选'],
activeIndex: -1,
+ postlist: [
+ ['全部', '餐饮美食', '百货超市', '美容美发'],
+ ['区域1', '区域2', '区域3', '区域4'],
+ ['小于50m²', '50-200m²', '200-600m²', '600-800m²', '800-1000m²', '1000m²以上'],
+ ['面积从大到小', '面积从小到大', '租金从大到小', '租金从小到大']
+ ],
+ queryInfo: {
+ region: '',
+ sortType: '',
+ areaType: '',
+ business: ''
+ }
};
},
computed: {
@@ -56,7 +61,7 @@
},
created() {
this.postlist[0]=JSON.parse(uni.getStorageSync('classList'))
- // this.postlist[1]=JSON.parse(uni.getStorageSync('regionList'))
+ this.postlist[1]=JSON.parse(uni.getStorageSync('regionList'))
},
methods: {
changeActiveIndex(index) {
@@ -66,8 +71,17 @@
this.activeIndex = index
},
cancelDrop() {
- console.log("取消遮罩");
this.activeIndex = -1;
+ },
+ getQueryInfo(querys) {
+ this.queryInfo = {
+ ...this.queryInfo,
+ ...querys
+ }
+ const query = this.$u.queryParams(this.queryInfo)
+ console.log(query, 'query');
+ this.$emit('getQueryInfo', query)
+ return query
}
}
}
diff --git a/components/DropDown/DropDownItem.vue b/components/DropDown/DropDownItem.vue
index b8b9de2..5b95120 100644
--- a/components/DropDown/DropDownItem.vue
+++ b/components/DropDown/DropDownItem.vue
@@ -30,15 +30,38 @@
},
data() {
return {
- activeIndex: -1
+ activeIndex: -1,
+ queryInfo: {}
}
},
methods: {
handleMask() {
this.$emit('cancelDrop');
},
+ sendQueryInfo() {
+ if (this.type === '行业') {
+ this.queryInfo = {
+ business: this.list[this.activeIndex]
+ }
+ } else if (this.type === '区域') {
+ this.queryInfo = {
+ region: this.list[this.activeIndex]
+ }
+ } else if (this.type === '面积') {
+ this.queryInfo = {
+ areaType: this.activeIndex + 1
+ }
+ } else if (this.type === '筛选') {
+ this.queryInfo = {
+ sortType: this.activeIndex + 1
+ }
+ }
+ // 发送queryInfo
+ this.$emit('getQueryInfo', this.queryInfo);
+ },
async handleActive(index) {
this.activeIndex = index;
+ this.sendQueryInfo(index);
// 设置一个定时器,等待200毫秒
const delayPromise = this.delay(200);
// 等待定时器完成
@@ -55,8 +78,7 @@
}, ms);
});
},
- },
-
+ }
}
diff --git a/components/SearchShopList/SearchShopList.vue b/components/SearchShopList/SearchShopList.vue
index 3cdf75f..e4c6e35 100644
--- a/components/SearchShopList/SearchShopList.vue
+++ b/components/SearchShopList/SearchShopList.vue
@@ -13,13 +13,18 @@