You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
16 KiB
1 lines
16 KiB
{"version":3,"sources":["uni-app:///main.js","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?1f05","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?ae0a","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?db4c","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?a506","uni-app:///pages/page/search.vue","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?4c36","webpack:///C:/Users/liudan/Desktop/git/huajucanyin/pages/page/search.vue?f76a"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","data","searchType","searchTypeText","goods","groups","find","searchKeywords","isHistory","searchList","historyList","search","categoryList","onReady","onLoad","methods","loadData","url","success","loadSearch","setSearch","keywords","setHistory","serachData","searchHistory","uni","key","removeHistory","title","content","keywordsToList","categoryToList","category_id","category_name","onSearchInputChanged","onSearchInputConfirmed"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,eAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAmH;AACnH;AAC0D;AACL;AACa;;;AAGlE;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,4EAAM;AACR,EAAE,iFAAM;AACR,EAAE,0FAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,qFAAU;AACZ;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC5BA;AAAA;AAAA;AAAA;AAA6mB,CAAgB,0nBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eC6DjoB;EACAC;IACA;MACAC;MACAC;QACAC;QACAC;QACAC;MACA;MACAC;MACAC;MAAA;MACAC;MAAA;MACAC;MAAA;MACAC;QACAC;QACAH;MACA;IACA;EACA;EACAI;IACA;IACA;EACA;EACAC;IACA;IACA;EACA;EACAC;IACAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;kBACAC;kBACAC;oBACA;kBACA;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IACAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;kBACAF;kBACAhB;oBAAAU;kBAAA;kBACAO;oBACA;oBACA;sBACA;oBACA;kBACA;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IACAE;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;kBACAH;kBACAhB;oBAAAoB;kBAAA;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IACA;IACAC;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;QACAC;UAAAF;QAAA;MACA;QACAE;MACA;MACA;MACA;QACA;UACAC;UACA;QACA;MACA;MACAA;MACAC;QACAC;QACAzB;MACA;IACA;IACA;IACA0B;MAAA;MACAF;QACAG;QACAC;QACAX;UACA;YACA;YACAO;cAAAC;YAAA;UACA;QACA;MACA;IACA;IACA;IACAI;MACA;MACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;QAAAC;QAAAC;MAAA;IACA;IACAC;MACA;MACA;QACA;QACA;MACA;QACA;MACA;IACA;IACAC;MACA;MACA;QACA;QACA;UACA;QACA;UACAV;YAAAG;YAAAC;UAAA;UACA;QACA;MACA;QACA;QACAJ;QACA;QACA;QACA;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACrMA;AAAA;AAAA;AAAA;AAAo4B,CAAgB,m3BAAG,EAAC,C;;;;;;;;;;;ACAx5B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/page/search.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/page/search.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./search.vue?vue&type=template&id=53c7e13f&\"\nvar renderjs\nimport script from \"./search.vue?vue&type=script&lang=js&\"\nexport * from \"./search.vue?vue&type=script&lang=js&\"\nimport style0 from \"./search.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"pages/page/search.vue\"\nexport default component.exports","export * from \"-!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./search.vue?vue&type=template&id=53c7e13f&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n var g0 = _vm.$wanlshop.wanlsys()\n var g1 = _vm.$wanlshop.wanlsys()\n var g2 = _vm.$wanlshop.wanlsys()\n var g3 = _vm.isHistory ? _vm.historyList.length : null\n if (!_vm._isMounted) {\n _vm.e0 = function ($event) {\n return _vm.$wanlshop.back(1)\n }\n }\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n g0: g0,\n g1: g1,\n g2: g2,\n g3: g3,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./search.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./search.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view class=\"wanl-search\">\r\n\t\t<!-- 导航条 -->\r\n\t\t<view class=\"cu-custom\" :style=\"{height: $wanlshop.wanlsys().height + 'px' }\">\r\n\t\t\t<view class=\"cu-bar fixed\" :style=\"{ height: $wanlshop.wanlsys().height + 'px', paddingTop: $wanlshop.wanlsys().top + 'px'}\">\r\n\t\t\t\t<view class=\"action\" @tap=\"$wanlshop.back(1)\">\r\n\t\t\t\t\t<text class=\"wlIcon-fanhui1\"></text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"search-form round\">\r\n\t\t\t\t\t<text class=\"wlIcon-sousuo1 text-bold\"></text>\r\n\t\t\t\t\t<input type=\"text\" maxlength=\"12\" confirm-type=\"search\" placeholder-style=\"color: #ccc\" :placeholder=\"searchKeywords ? searchKeywords : `搜索 ${searchTypeText[searchType]}`\" @confirm=\"onSearchInputConfirmed\" @input=\"onSearchInputChanged\" focus />\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"history padding-lr\" v-if=\"isHistory\">\r\n\t\t\t<view v-if=\"historyList.length > 0\">\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>历史搜索</text>\r\n\t\t\t\t\t<text class=\"wlIcon-lajitong\" @tap=\"removeHistory\"></text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<view v-for=\"(item, index) in historyList\" :key=\"item.keywords\" @tap=\"keywordsToList(item.keywords)\">{{ item.keywords }}</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view>\r\n\t\t\t\t<view class=\"title\">\r\n\t\t\t\t\t<text>热门搜索</text>\r\n\t\t\t\t\t<text class=\"wlIcon-guanzhu\"></text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"list\">\r\n\t\t\t\t\t<block v-for=\"(item, index) in searchList\" :key=\"item.id\">\r\n\t\t\t\t\t\t<view v-if=\"item.flag == 'hot'\" class=\"action\" @tap=\"keywordsToList(item.keywords)\">\r\n\t\t\t\t\t\t\t<text>{{ item.keywords }}</text>\r\n\t\t\t\t\t\t\t<text class=\"cu-tag badge\">hot</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t\t<view @tap=\"keywordsToList(item.keywords)\" v-else>\r\n\t\t\t\t\t\t\t<text>{{ item.keywords }}</text>\r\n\t\t\t\t\t\t</view>\r\n\t\t\t\t\t</block>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t<view class=\"cu-list menu\" v-else>\r\n\t\t\t<view class=\"cu-item\" v-for=\"(item, index) in search.searchList\" :key=\"item.keywords\">\r\n\t\t\t\t<view class=\"content\" @tap=\"keywordsToList(item.keywords)\">\r\n\t\t\t\t\t<text class=\"text-sm\">{{ item.keywords }}</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t\t<view class=\"cu-item arrow\" v-for=\"(item, index) in search.categoryList\" :key=\"item.id\" @tap=\"categoryToList(item.id, item.name)\" v-if=\"searchType !== 'find'\">\r\n\t\t\t\t<view class=\"content\">\r\n\t\t\t\t\t<text class=\"text-sm text-gray\">{{ item.name }}</text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"action\">\r\n\t\t\t\t\t<view class=\"cu-tag round bg-orange light\">{{ item.name }}类目</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tsearchType: 'goods',\r\n\t\t\tsearchTypeText: {\r\n\t\t\t\tgoods: '商品、类目',\r\n\t\t\t\tgroups: '团购商品、团购类目',\r\n\t\t\t\tfind: '种草、买家秀'\r\n\t\t\t},\r\n\t\t\tsearchKeywords: '',\r\n\t\t\tisHistory: true, //历史记录&实时搜索\r\n\t\t\tsearchList: {}, //热门搜索列表\r\n\t\t\thistoryList: [], //历史记录列表\r\n\t\t\tsearch: {\r\n\t\t\t\tcategoryList: {},\r\n\t\t\t\tsearchList: {}\r\n\t\t\t}\r\n\t\t};\r\n\t},\r\n\tonReady() {\r\n\t\tthis.loadData();\r\n\t\tthis.historyList = uni.getStorageSync('search:history');\r\n\t},\r\n\tonLoad(option) {\r\n\t\tif (option.keywords) this.searchKeywords = option.keywords;\r\n\t\tif (option.type) this.searchType = option.type;\r\n\t},\r\n\tmethods: {\r\n\t\tasync loadData() {\r\n\t\t\tthis.$api.get({\r\n\t\t\t\turl: '/wanlshop/common/searchList',\r\n\t\t\t\tsuccess: res => {\r\n\t\t\t\t\tthis.searchList = res;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tasync loadSearch(val) {\r\n\t\t\tthis.$api.get({\r\n\t\t\t\turl: '/wanlshop/common/search',\r\n\t\t\t\tdata: { search: val },\r\n\t\t\t\tsuccess: res => {\r\n\t\t\t\t\tthis.search = res;\r\n\t\t\t\t\tif(res.categoryList.length != 0 || res.searchList.length != 0){\r\n\t\t\t\t\t\tthis.isHistory = false\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tasync setSearch(text) {\r\n\t\t\tthis.$api.get({\r\n\t\t\t\turl: '/wanlshop/common/setSearch',\r\n\t\t\t\tdata: { keywords: text }\r\n\t\t\t});\r\n\t\t},\r\n\t\t// 存储历史数据\r\n\t\tsetHistory(text) {\r\n\t\t\tthis.setSearch(text);\r\n\t\t\tthis.loadData(); //重新加载热门搜索\r\n\t\t\tlet historyList = uni.getStorageSync('search:history');\r\n\t\t\tthis.historyList = [];\r\n\t\t\tthis.historyList = historyList; //重新加载历史记录\r\n\t\t\tlet searchHistory = historyList;\r\n\t\t\tif (!searchHistory) searchHistory = [];\r\n\t\t\tlet serachData = {};\r\n\t\t\tif (typeof text === 'string') {\r\n\t\t\t\tserachData = { keywords: text };\r\n\t\t\t} else {\r\n\t\t\t\tserachData = text;\r\n\t\t\t}\r\n\t\t\t// 判断数组是否存在,如果存在,那么将放到最前面\r\n\t\t\tfor (var i = 0; i < searchHistory.length; i++) {\r\n\t\t\t\tif (searchHistory[i].keywords === serachData.keywords) {\r\n\t\t\t\t\tsearchHistory.splice(i, 1);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tsearchHistory.unshift(serachData);\r\n\t\t\tuni.setStorage({\r\n\t\t\t\tkey: 'search:history',\r\n\t\t\t\tdata: searchHistory\r\n\t\t\t});\r\n\t\t},\r\n\t\t// 清空历史数据\r\n\t\tremoveHistory() {\r\n\t\t\tuni.showModal({\r\n\t\t\t\ttitle: '提示',\r\n\t\t\t\tcontent: '是否清理全部搜索历史?该操作不可逆。',\r\n\t\t\t\tsuccess: res => {\r\n\t\t\t\t\tif (res.confirm) {\r\n\t\t\t\t\t\tthis.historyList = [];\r\n\t\t\t\t\t\tuni.removeStorage({ key: 'search:history' });\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\t// 跳转列表\r\n\t\tkeywordsToList(keywords) {\r\n\t\t\tthis.setHistory(keywords);\r\n\t\t\tif(this.searchType === 'find'){\r\n\t\t\t\tthis.$wanlshop.to(`/pages/apps/find/list?search=${keywords}`);\r\n\t\t\t}else{\r\n\t\t\t\tthis.$wanlshop.to(`/pages/product/list?type=${this.searchType}&search=${keywords}`);\r\n\t\t\t}\r\n\t\t},\r\n\t\tcategoryToList(category_id, category_name) {\r\n\t\t\tthis.setHistory(category_name);\r\n\t\t\tthis.$wanlshop.to(`/pages/product/list?type=${this.searchType}&data=${JSON.stringify({ category_id: category_id, category_name: category_name })}`);\r\n\t\t},\r\n\t\tonSearchInputChanged(event) {\r\n\t\t\tlet value = event.detail.value;\r\n\t\t\tif (!value) {\r\n\t\t\t\tthis.isHistory = true;\r\n\t\t\t\treturn;\r\n\t\t\t} else {\r\n\t\t\t\tthis.loadSearch(value);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSearchInputConfirmed(event) {\r\n\t\t\tlet value = event.detail.value;\r\n\t\t\tif (!value) {\r\n\t\t\t\tthis.isHistory = true;\r\n\t\t\t\tif (this.searchKeywords) {\r\n\t\t\t\t\tthis.keywordsToList(this.searchKeywords);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tuni.showModal({ title: '提示', content: '请输入内容。' });\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.isHistory = true;\r\n\t\t\t\tuni.hideKeyboard();\r\n\t\t\t\tthis.historyList = [];\r\n\t\t\t\tthis.historyList = uni.getStorageSync('search:history');\r\n\t\t\t\tthis.keywordsToList(value); //跳转列表页面\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n</script>\r\n\r\n<style>\r\npage {\r\n\tbackground: #ffffff;\r\n}\r\n.cu-custom .search-form{\r\n\tborder: 3rpx solid #fe6600;\r\n\tbackground-color: #fff;\r\n}\r\n</style>\r\n","import mod from \"-!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./search.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../k/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./search.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1699839790440\n var cssReload = require(\"C:/Users/liudan/Desktop/k/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} |