Commit d354faedc95abc8a7de97e3017446bda5e3bb1c9

Authored by 王强
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 // 设置还有需要加载的内容
... ...