Commit d354faedc95abc8a7de97e3017446bda5e3bb1c9
1 parent
fd9a88a0
优选库,搜索页面“更多”选项个数不一致问题,是上拉加载导致的page参数问题,已修复~
Showing
1 changed file
with
46 additions
and
52 deletions
src/pages/search/search.vue
| ... | ... | @@ -161,31 +161,40 @@ |
| 161 | 161 | */ |
| 162 | 162 | more(status = "") { |
| 163 | 163 | |
| 164 | + // 获取keyword/初始化页码 | |
| 165 | + let keyword = window.sessionStorage.getItem("keyword") || this.$refs.searchCom.getKeyword(); | |
| 166 | + | |
| 167 | + // 设置请求参数 | |
| 168 | + let params = { | |
| 169 | + keyword: keyword | |
| 170 | + }; | |
| 171 | + | |
| 164 | 172 | // 设置展示的页面状态编码 |
| 165 | 173 | if (status) { |
| 166 | 174 | this.$set(this.displayPage, "value", status); |
| 175 | + this.$set(this.paging, "page", 1); | |
| 176 | + this.$set(params, 'page', 1); | |
| 177 | + } else { | |
| 178 | + this.$set(this.paging, "page", ++this.paging.page); | |
| 179 | + this.$set(params, 'page', this.paging.page); | |
| 167 | 180 | } |
| 168 | 181 | |
| 169 | - // 获取keyword/初始化页码 | |
| 170 | - let keyword = window.sessionStorage.getItem("keyword") || this.$refs.searchCom.getKeyword(); | |
| 171 | - this.$set(this.paging, "page", ++this.paging.page); | |
| 172 | - | |
| 173 | 182 | // 根据displayPage的value,判断调用哪个单页面 |
| 174 | 183 | switch (this.displayPage.value) { |
| 175 | 184 | case this.displayPage.status.GOODS: // 商品搜素 |
| 176 | 185 | |
| 177 | 186 | // 商品搜素 |
| 178 | - this.goodsSearch(keyword); | |
| 187 | + this.goodsSearch(params); | |
| 179 | 188 | break; |
| 180 | 189 | case this.displayPage.status.DAREN: // 达人搜素 |
| 181 | 190 | |
| 182 | 191 | // 达人搜素 |
| 183 | - this.darenSearch(keyword); | |
| 192 | + this.darenSearch(params); | |
| 184 | 193 | break; |
| 185 | 194 | case this.displayPage.status.FOOD: // 美食搜素 |
| 186 | 195 | |
| 187 | 196 | // 美食搜素 |
| 188 | - this.foodsSearch(keyword); | |
| 197 | + this.foodsSearch(params); | |
| 189 | 198 | break; |
| 190 | 199 | } |
| 191 | 200 | }, |
| ... | ... | @@ -364,9 +373,9 @@ |
| 364 | 373 | |
| 365 | 374 | /** |
| 366 | 375 | * 商品搜索 |
| 367 | - * @param {String} keyword [搜索关键字] | |
| 376 | + * @param {Object} params [请求参数] | |
| 368 | 377 | */ |
| 369 | - goodsSearch(keyword) { | |
| 378 | + goodsSearch(params) { | |
| 370 | 379 | |
| 371 | 380 | // 加载中 |
| 372 | 381 | this.$set(this.paging, "loading", true); |
| ... | ... | @@ -374,22 +383,21 @@ |
| 374 | 383 | // 加载中提示 |
| 375 | 384 | Indicator.open("搜索中..."); |
| 376 | 385 | |
| 386 | + // 添加请求参数 | |
| 387 | + this.$set(params, 'uid', this.getStore("uid") || 0); | |
| 388 | + | |
| 377 | 389 | // 获取证书请求接口 |
| 378 | - this.http("/Api/" + this.getApiVersion().index + "/goodsSearch", { | |
| 379 | - keyword: keyword, | |
| 380 | - uid: this.getStore("uid"), | |
| 381 | - page: this.paging.page | |
| 382 | - }, this.pagingSearchCallback, { | |
| 390 | + this.http("/Api/" + this.getApiVersion().index + "/goodsSearch", params, this.pagingSearchCallback, { | |
| 383 | 391 | method: "POST", |
| 384 | - keyword | |
| 392 | + params | |
| 385 | 393 | }); |
| 386 | 394 | }, |
| 387 | 395 | |
| 388 | 396 | /** |
| 389 | 397 | * 达人搜索 |
| 390 | - * @param {String} keyword [搜索关键字] | |
| 398 | + * @param {Object} params [请求参数] | |
| 391 | 399 | */ |
| 392 | - darenSearch(keyword) { | |
| 400 | + darenSearch(params) { | |
| 393 | 401 | |
| 394 | 402 | // 加载中 |
| 395 | 403 | this.$set(this.paging, "loading", true); |
| ... | ... | @@ -397,22 +405,21 @@ |
| 397 | 405 | // 加载中提示 |
| 398 | 406 | Indicator.open("搜索中..."); |
| 399 | 407 | |
| 408 | + // 添加请求参数 | |
| 409 | + this.$set(params, 'uid', this.getStore("uid") || 0); | |
| 410 | + | |
| 400 | 411 | // 获取证书请求接口 |
| 401 | - this.http("/Api/" + this.getApiVersion().index + "/darenSearch", { | |
| 402 | - keyword: keyword, | |
| 403 | - uid: this.getStore("uid"), | |
| 404 | - page: this.paging.page | |
| 405 | - }, this.pagingSearchCallback, { | |
| 412 | + this.http("/Api/" + this.getApiVersion().index + "/darenSearch", params, this.pagingSearchCallback, { | |
| 406 | 413 | method: "POST", |
| 407 | - keyword | |
| 414 | + params | |
| 408 | 415 | }); |
| 409 | 416 | }, |
| 410 | 417 | |
| 411 | 418 | /** |
| 412 | 419 | * 美食搜索 |
| 413 | - * @param {String} keyword [搜索关键字] | |
| 420 | + * @param {Object} params [请求参数] | |
| 414 | 421 | */ |
| 415 | - foodsSearch(keyword) { | |
| 422 | + foodsSearch(params) { | |
| 416 | 423 | |
| 417 | 424 | // 加载中 |
| 418 | 425 | this.$set(this.paging, "loading", true); |
| ... | ... | @@ -420,28 +427,15 @@ |
| 420 | 427 | // 加载中提示 |
| 421 | 428 | Indicator.open("搜索中..."); |
| 422 | 429 | |
| 423 | - | |
| 424 | - // window.alert('keyword:' + keyword); | |
| 425 | - // window.alert('uid:' + this.getStore("uid")); | |
| 426 | - // window.alert('longitude:' + this.coordinate.longitude); | |
| 427 | - // window.alert('latitude:' + this.coordinate.latitude); | |
| 428 | - // window.alert('page:' + this.paging.page); | |
| 429 | - | |
| 430 | - | |
| 431 | - | |
| 432 | - | |
| 433 | - | |
| 430 | + // 添加请求参数 | |
| 431 | + this.$set(params, 'uid', this.getStore("uid") || 0); | |
| 432 | + this.$set(params, 'longitude', this.coordinate.longitude); | |
| 433 | + this.$set(params, 'latitude', this.coordinate.latitude); | |
| 434 | + | |
| 434 | 435 | // 获取证书请求接口 |
| 435 | - this.http("/Api/" + this.getApiVersion().index + "/foodsSearch", { | |
| 436 | - keyword: keyword, | |
| 437 | - uid: this.getStore("uid"), | |
| 438 | - longitude: this.coordinate.longitude, | |
| 439 | - latitude: this.coordinate.latitude, | |
| 440 | - page: this.paging.page | |
| 441 | - }, this.pagingSearchCallback, { | |
| 436 | + this.http("/Api/" + this.getApiVersion().index + "/foodsSearch", params, this.pagingSearchCallback, { | |
| 442 | 437 | method: "POST", |
| 443 | - keyword, | |
| 444 | - coordinate: this.coordinate | |
| 438 | + params | |
| 445 | 439 | }); |
| 446 | 440 | }, |
| 447 | 441 | |
| ... | ... | @@ -476,10 +470,10 @@ |
| 476 | 470 | if (datas.goods.length) { |
| 477 | 471 | |
| 478 | 472 | // 替换标题中的keyword |
| 479 | - this.keywordHigh(datas.goods, ext.keyword); | |
| 473 | + this.keywordHigh(datas.goods, ext.params.keyword); | |
| 480 | 474 | |
| 481 | 475 | // 判断数据处理方式 |
| 482 | - if (this.paging.page > 1) { // 追加数据 | |
| 476 | + if (ext.params.page > 1) { // 追加数据 | |
| 483 | 477 | this.$set(this.goodsLists, "list", [...this.goodsLists.list, ...datas.goods]); |
| 484 | 478 | } else { // 初始化数据 |
| 485 | 479 | this.$set(this.goodsLists, "list", datas.goods); |
| ... | ... | @@ -499,10 +493,10 @@ |
| 499 | 493 | if (datas.shop.length) { |
| 500 | 494 | |
| 501 | 495 | // 替换标题中的keyword |
| 502 | - this.keywordHigh(datas.shop, ext.keyword); | |
| 496 | + this.keywordHigh(datas.shop, ext.params.keyword); | |
| 503 | 497 | |
| 504 | 498 | // 判断数据处理方式 |
| 505 | - if (this.paging.page > 1) { | |
| 499 | + if (ext.params.page > 1) { | |
| 506 | 500 | this.$set(this.darenLists, "list", [...this.darenLists.list, ...datas.shop]); |
| 507 | 501 | } else { |
| 508 | 502 | this.$set(this.darenLists, "list", datas.shop); |
| ... | ... | @@ -522,14 +516,14 @@ |
| 522 | 516 | if (datas.foodsShop.length) { |
| 523 | 517 | |
| 524 | 518 | // 替换标题中的keyword |
| 525 | - this.keywordHigh(datas.foodsShop, ext.keyword); | |
| 519 | + this.keywordHigh(datas.foodsShop, ext.params.keyword); | |
| 526 | 520 | |
| 527 | 521 | // 判断数据处理方式 |
| 528 | - if (this.paging.page > 1) { | |
| 522 | + if (ext.params.page > 1) { | |
| 529 | 523 | this.$set(this.foodLists, "list", [...this.foodLists.list, ...datas.foodsShop]); |
| 530 | 524 | } else { |
| 531 | 525 | this.$set(this.foodLists, "list", datas.foodsShop); |
| 532 | - this.$set(this.foodLists, "coordinate", ext.coordinate); | |
| 526 | + this.$set(this.foodLists, "coordinate", {'longitude': ext.params.longitude, 'latitude': ext.params.latitude}); | |
| 533 | 527 | } |
| 534 | 528 | |
| 535 | 529 | // 设置还有需要加载的内容 | ... | ... |