123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- // pages/search-page/search-page.js
- var http = require('../../utils/http.js');
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- hotSearchList: [],
- prodName:"",
- recentSearch: [],
-
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options) {
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function () {
- var ths = this;
- //热门搜索
- var params = {
- url: "/search/hotSearch",
- method: "GET",
- data: {
- number:10,
- sort:1,
- },
-
- callBack: function (res) {
- ths.setData({
- hotSearchList:res,
- });
- },
- };
- http.request(params);
- // 获取历史搜索
- this.getRecentSearch();
- },
- /**
- * 获取历史搜索
- */
- getRecentSearch: function () {
- let recentSearch = wx.getStorageSync('recentSearch');
- this.setData({
- recentSearch
- });
- },
- /**
- * 搜索提交
- */
- toSearchProdPage: function () {
- if (this.data.prodName.trim()) {
- // 记录最近搜索
- let recentSearch = wx.getStorageSync('recentSearch') || [];
- recentSearch = recentSearch.filter(item => item !== this.data.prodName)
- recentSearch.unshift(this.data.prodName);
- if (recentSearch.length>10){
- recentSearch.pop();
- }
- wx.setStorageSync('recentSearch', recentSearch);
- // 跳转到商品列表页
- wx.navigateTo({
- url: '/pages/search-prod-show/search-prod-show?prodName=' + this.data.prodName,
- })
- }
- },
- /**
- * 清空搜索历史
- */
- clearSearch: function () {
- wx.removeStorageSync('recentSearch');
- this.getRecentSearch();
- },
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function () {
- },
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
- },
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function () {
- },
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
- },
- /**
- * 用户点击右上角分享
- */
- onShareAppMessage: function () {
- },
- // 返回首页
- goBackIndex:function(){
- wx.navigateBack({
- // url: '/pages/search-page/search-page',
- })
- },
- //输入商品名获取数据 || 绑定输入值
- getSearchContent:function(e){
- this.setData({
- prodName: e.detail.value
- })
- // this.data.prodName=e.detail.value
- },
- //点击搜素历史
- onHistSearch:function(e){
- var name = e.currentTarget.dataset.name;
- this.setData({
- prodName: name
- });
- this.toSearchProdPage();
- }
- })
|