SearchPage.js 2.81 KB
   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
//index.js
//获取应用实例
var app = getApp()
var networkUtil = require('../../utils/network_util.js')
var api = require('../../utils/apiFile.js')
var page
// 是否有更多
var hasMore
var isRefresh



Page({
data: {
// 搜索结果
list: [],
selectHide: false,
inputValue: '',
// 搜索词汇
getSearch: [],
modalHidden: true,
searching:false,
test:''
},
onLoad: function () {
},
onShow: function () {
var getSearch = wx.getStorageSync('searchData');
this.setData({
getSearch: getSearch.reverse(),
inputValue: ''
})
},
/*-------------------- ----------*/
// 设置缓存
setSearchStorage: function () {
let data;
let localStorageValue = [];
if (this.data.inputValue != '') {
//调用API从本地缓存中获取数据
var searchData = wx.getStorageSync('searchData') || []
searchData.push(this.data.inputValue)
wx.setStorageSync('searchData', searchData)
this.setData({
getSearch: searchData.reverse(),
})
} else {
console.log('空白')
}
},
// 加载数据
loadData(text){
var self = this
isRefresh = true
var param = { k: text, limit: 30, page:1}
networkUtil.showLoading()
networkUtil._get(api.search, param, function (res) {
console.log('数据-----', res)
isRefresh = false
var arr = []
if (page > 0) {// 加载更多模式
arr = self.data.list
}
if (res.data.list.length < 15) {
hasMore = false
}
arr = arr.concat(res.data.list)
var temp = self.data.category
self.setData({
list: arr,
hasMore: hasMore,
category: temp
})
}, function (res) {

})
},
/*-------------------- 交互----------*/
// 返回
back: function () {
wx.navigateBack({
})
},
// 清除输入框
clearInput: function () {
this.setData({
inputValue: '',
list: [],
searching: false
})
},
// 输入完成
inputEnd:function(e){
networkUtil.showLoading()
this.setData({
inputValue: e.detail.value,
searching: true,
list:[]
})
this.setSearchStorage()
this.loadData(e.detail.value)
},
// 清除所有历史
clearAll: function () {
wx.setStorageSync('searchData', [])
this.setData({
getSearch: [],

})
},
// 选择该项历史
selectThis: function (e) {
this.setData({
inputValue: e.currentTarget.dataset.text,
searching: true
})
this.loadData(e.currentTarget.dataset.text)
},
// 删除该项历史
deletThis: function (e) {

var data = this.data.getSearch
data.splice(e.currentTarget.dataset.index,1)
this.setData({
getSearch: data
})
},
bindInput: function (e) {
this.setData({
inputValue: e.detail.value
})
}
})