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 line
11 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{"remainingRequest":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/linhuakun/Downloads/coderlhk/bigbar-start/src/views/home/Home.vue?vue&type=script&lang=js&","dependencies":[{"path":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/src/views/home/Home.vue","mtime":1616165900027},{"path":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/bigbar-start/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCBOYXZCYXIgZnJvbSAiQC9jb21wb25lbnRzL2NvbW1vbi9uYXZiYXIvTmF2QmFyIjsKaW1wb3J0IHNjcm9sbCBmcm9tICJAL2NvbXBvbmVudHMvY29tbW9uL1Njcm9sbC9uZXdTY3JvbGwiOwppbXBvcnQgVGFiQ29udHJvbCBmcm9tICJAL2NvbXBvbmVudHMvY29udGVudC90YWJDb250cm9sL1RhYkNvbnRyb2wiOwppbXBvcnQgR29vZHNMaXN0IGZyb20gIkAvY29tcG9uZW50cy9jb250ZW50L2dvb2RzL0dvb2RzTGlzdCI7CmltcG9ydCBHb29kc0xpc3RJdGVtIGZyb20gIkAvY29tcG9uZW50cy9jb250ZW50L2dvb2RzL0dvb2RzTGlzdEl0ZW0iOwppbXBvcnQgYmFja1RvcCBmcm9tICJAL2NvbXBvbmVudHMvY29udGVudC9iYWNrVG9wL2JhY2tUb3AiOwoKaW1wb3J0IEhvbWVTd2lwZXIgZnJvbSAiLi9jaGlsZENvbXBzL0hvbWVTd2lwZXIiOwppbXBvcnQgSG9tZVJlY29tbWVuZFZpZXcgZnJvbSAiLi9jaGlsZENvbXBzL0hvbWVSZWNvbW1lbmRWaWV3IjsKaW1wb3J0IEhvbWVmZWF0dXJlVmlldyBmcm9tICIuL2NoaWxkQ29tcHMvSG9tZWZlYXR1cmVWaWV3IjsKCmltcG9ydCB7Z2V0SG9tZUdvb2RzfSBmcm9tICJAL25ldHdvcmsvaG9tZSI7CmltcG9ydCB7aXRlbUxpc3RlbmVyTWl4aW4sYmFja1RvcE1peGluLH0gZnJvbSAiQC9jb21tb24vbWl4aW4iOwppbXBvcnQge0Jhbm5lcnNkYXRhfSBmcm9tICdAL2NvbW1vbi9sb2NhbGRhdGEuanMnCgpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIkhvbWUiLAogIGNvbXBvbmVudHM6IHsKICAgIE5hdkJhciwKICAgIHNjcm9sbCwKICAgIFRhYkNvbnRyb2wsCiAgICBHb29kc0xpc3QsCiAgICBHb29kc0xpc3RJdGVtLAogICAgYmFja1RvcCwKCgogICAgSG9tZVN3aXBlciwKICAgIEhvbWVSZWNvbW1lbmRWaWV3LAogICAgSG9tZWZlYXR1cmVWaWV3LAogIH0sCiAgZGF0YSgpewogICAgcmV0dXJuewogICAgICBiYW5uZXJzOltdLAogICAgICByZWNvbW1lbmRzOltdLAogICAgICBnb29kczp7CiAgICAgICAgJ3BvcCc6e3BhZ2U6MCxsaXN0OltdfSwKICAgICAgICAnbmV3Jzp7cGFnZTowLGxpc3Q6W119LAogICAgICAgICdzZWxsJzp7cGFnZTowLGxpc3Q6W119LAogICAgICB9LAogICAgICBjdXJyZW50VHlwZToncG9wJywKICAgICAgLy8gcmVzdWx0Om51bGwKICAgICAgcHVsbGluZ2Rvd246ZmFsc2UsCiAgICB9CiAgfSwKICBtaXhpbnM6W2l0ZW1MaXN0ZW5lck1peGluLGJhY2tUb3BNaXhpbl0sCiAgLy/nu4Tku7bliqDovb3lrozov5DooYzvvIznlJ/lkb3lkajmnJ/lh73mlbBEb20KICBjcmVhdGVkKCkgewogICAgdGhpcy5nZXRIb21lR29vZHMoJ3BvcCcpCiAgICB0aGlzLmdldEhvbWVHb29kcygnbmV3JykKICAgIHRoaXMuZ2V0SG9tZUdvb2RzKCdzZWxsJykKICAgIHRoaXMuYmFubmVycz1CYW5uZXJzZGF0YS5saXN0OwogIH0sCiAgbW91bnRlZCgpIHsKICB9LAogIG1ldGhvZHM6ewogICAgLy/llYblk4HnmoTliqDovb3mm7TlpJoKICAgIGdldEhvbWVHb29kcyh0eXBlKXsKICAgICAgY29uc3QgcGFnZT10aGlzLmdvb2RzW3R5cGVdLnBhZ2UrMQogICAgICBnZXRIb21lR29vZHModHlwZSxwYWdlKS50aGVuKHJlcz0+ewogICAgICAgIHRoaXMuZ29vZHNbdHlwZV0ubGlzdC5wdXNoKC4uLnJlcy5kYXRhLmRhdGEubGlzdCkKICAgICAgICB0aGlzLmdvb2RzW3R5cGVdLnBhZ2UrPTEKICAgICAgICB0aGlzLiRyZWZzLnNjcm9sbC5maW5pc2hQdWxsVXAoKQogICAgICB9KQogICAgfSwKICAgIC8v5LqL5Lu255uR5ZCsCiAgICB0YWJDbGljayhpbmRleCl7CiAgICAgIHN3aXRjaCAoaW5kZXgpewogICAgICAgIGNhc2UgMDoKICAgICAgICAgIHRoaXMuY3VycmVudFR5cGU9J3BvcCcKICAgICAgICAgICAgICBicmVhawogICAgICAgIGNhc2UgMToKICAgICAgICAgIHRoaXMuY3VycmVudFR5cGU9J25ldycKICAgICAgICAgICAgICBicmVhawogICAgICAgIGNhc2UgMjoKICAgICAgICAgIHRoaXMuY3VycmVudFR5cGU9J3NlbGwnCiAgICAgICAgICAgICAgYnJlYWsKICAgICAgfQogICAgICAvL+S4ieenjeexu+Wei+eahOWIh+aNogogICAgICB0aGlzLiRyZWZzLnRhYkNvbnRyb2wxLmN1cnJlbnRJbmRleD1pbmRleDsKICAgICAgdGhpcy4kcmVmcy50YWJDb250cm9sMi5jdXJyZW50SW5kZXg9aW5kZXg7CiAgICAgIAogICAgfSwKICAgIC8v5LiK5ouJ5Yqg6L295pu05aSaCiAgICBsb2FkTW9yZSgpewogICAgICAvLyB0aGlzLmdldEhvbWVHb29kcyh0aGlzLmN1cnJlbnRUeXBlKQogICAgICAgdGhpcy5nZXRIb21lR29vZHMoJ3BvcCcpCiAgICAgICB0aGlzLmdldEhvbWVHb29kcygnbmV3JykKICAgICAgIHRoaXMuZ2V0SG9tZUdvb2RzKCdzZWxsJykKICAgICAgIHRoaXMuJHJlZnMuc2Nyb2xsLnJlZnJlc2goKQogICAgfSwKICAgIC8v6L2u5pKt5Zu+55qE5YiH5o2iCiAgICBzd2lwZXJJbWFnZUxvYWQoKXsKICAgICAgdGhpcy50YWJPZmZzZXRUb3A9dGhpcy4kcmVmcy50YWJDb250cm9sMi4kZWwub2Zmc2V0VG9wCiAgICB9LAogICAgICBwdWxsaW5nRG93bigpIHsKICAgICAgdGhpcy5wdWxsaW5nZG93biA9IHRydWU7CiAgICAgIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgIHRoaXMucHVsbGluZ2Rvd24gPSBmYWxzZTsKICAgICAgICB0aGlzLiRyZWZzLnNjcm9sbC5maW5pc2hQdWxsRG93bigpOwogICAgICB9LCAxMDAwKQogICAgfQogIH0sCiAgY29tcHV0ZWQ6ewogICAgc2hvd0dvb2RzKCl7CiAgICAgIHJldHVybiB0aGlzLmdvb2RzW3RoaXMuY3VycmVudFR5cGVdLmxpc3QKICAgIH0sCiAgICAvL+WIh+aNouadv+Wdl+aXtu+8jOWbnuadpeS/neWtmOW9k+WJjeeahOS9jee9rgogICAgYWN0aXZhdGVkKCl7CiAgICAgIHRoaXMuJHJlZnMuc2Nyb2xsLnJlZnJlc2goKQogICAgICB0aGlzLiRyZWZzLnNjcm9sbC5zY3JvbGxUbygwLHRoaXMuc2F2ZVksMCkKICAgIH0sCiAgICBkZWFjdGl2YXRlZCgpewogICAgICB0aGlzLnNhdmVZID0gdGhpcy4kcmVmcy5zY3JvbGwuZ2V0U2Nyb2xsWSgpCiAgICAgIC8v5Yik5pat5b2T5YmN5ZOq5Liq5Zu+54mH5Yqg6L2955uR5ZCsCiAgICAgIHRoaXMuJGJ1cy4kb2ZmKCdpdGVtSW1nTG9hZCcsdGhpcy5pdGVtSW1nTGlzdGVuZXIpCiAgICB9CiAgfQp9Cg=="},{"version":3,"sources":["Home.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"Home.vue","sourceRoot":"src/views/home","sourcesContent":["<template>\n <div class=\"home\">\n <NavBar class=\"nav-bar\"><div slot=\"center\">白酒商场</div></NavBar>\n <TabControl :titles=\"['流行','新款','精选']\"\n @tabClick=\"tabClick\"\n ref=\"tabControl1\"\n class=\"tab-control\"\n v-show=\"isTabFixed\"></TabControl>\n <scroll class=\"content\" ref=\"scroll\"\n :probe-type=\"3\"\n :pull-up-load=\"true\"\n @pullingUp=\"loadMore\"\n @pullingDown=\"pullingDown\"\n @scrollw=\"contentScoll\">\n <home-swiper :banners=\"banners\" @swiperImageLoad=\"swiperImageLoad\"></home-swiper>\n <home-recommend-view @swiperImageLoad=\"swiperImageLoad\"></home-recommend-view>\n <HomefeatureView @swiperImageLoad=\"swiperImageLoad\"></HomefeatureView>\n <TabControl :titles=\"['流行','新款','精选']\"\n @tabClick=\"tabClick\"\n ref=\"tabControl2\"\n class=\"tab-control\"></TabControl>\n <GoodsList :goods=\"showGoods\"></GoodsList>\n </scroll>\n <back-top @click.native=\"backClick\" v-show=\"isShowBackTop\"/>\n </div>\n</template>\n\n<script>\nimport NavBar from \"@/components/common/navbar/NavBar\";\nimport scroll from \"@/components/common/Scroll/newScroll\";\nimport TabControl from \"@/components/content/tabControl/TabControl\";\nimport GoodsList from \"@/components/content/goods/GoodsList\";\nimport GoodsListItem from \"@/components/content/goods/GoodsListItem\";\nimport backTop from \"@/components/content/backTop/backTop\";\n\nimport HomeSwiper from \"./childComps/HomeSwiper\";\nimport HomeRecommendView from \"./childComps/HomeRecommendView\";\nimport HomefeatureView from \"./childComps/HomefeatureView\";\n\nimport {getHomeGoods} from \"@/network/home\";\nimport {itemListenerMixin,backTopMixin,} from \"@/common/mixin\";\nimport {Bannersdata} from '@/common/localdata.js'\n\nexport default {\n name: \"Home\",\n components: {\n NavBar,\n scroll,\n TabControl,\n GoodsList,\n GoodsListItem,\n backTop,\n\n\n HomeSwiper,\n HomeRecommendView,\n HomefeatureView,\n },\n data(){\n return{\n banners:[],\n recommends:[],\n goods:{\n 'pop':{page:0,list:[]},\n 'new':{page:0,list:[]},\n 'sell':{page:0,list:[]},\n },\n currentType:'pop',\n // result:null\n pullingdown:false,\n }\n },\n mixins:[itemListenerMixin,backTopMixin],\n //组件加载完运行生命周期函数Dom\n created() {\n this.getHomeGoods('pop')\n this.getHomeGoods('new')\n this.getHomeGoods('sell')\n this.banners=Bannersdata.list;\n },\n mounted() {\n },\n methods:{\n //商品的加载更多\n getHomeGoods(type){\n const page=this.goods[type].page+1\n getHomeGoods(type,page).then(res=>{\n this.goods[type].list.push(...res.data.data.list)\n this.goods[type].page+=1\n this.$refs.scroll.finishPullUp()\n })\n },\n //事件监听\n tabClick(index){\n switch (index){\n case 0:\n this.currentType='pop'\n break\n case 1:\n this.currentType='new'\n break\n case 2:\n this.currentType='sell'\n break\n }\n //三种类型的切换\n this.$refs.tabControl1.currentIndex=index;\n this.$refs.tabControl2.currentIndex=index;\n \n },\n //上拉加载更多\n loadMore(){\n // this.getHomeGoods(this.currentType)\n this.getHomeGoods('pop')\n this.getHomeGoods('new')\n this.getHomeGoods('sell')\n this.$refs.scroll.refresh()\n },\n //轮播图的切换\n swiperImageLoad(){\n this.tabOffsetTop=this.$refs.tabControl2.$el.offsetTop\n },\n pullingDown() {\n this.pullingdown = true;\n setTimeout(() => {\n this.pullingdown = false;\n this.$refs.scroll.finishPullDown();\n }, 1000)\n }\n },\n computed:{\n showGoods(){\n return this.goods[this.currentType].list\n },\n //切换板块时,回来保存当前的位置\n activated(){\n this.$refs.scroll.refresh()\n this.$refs.scroll.scrollTo(0,this.saveY,0)\n },\n deactivated(){\n this.saveY = this.$refs.scroll.getScrollY()\n //判断当前哪个图片加载监听\n this.$bus.$off('itemImgLoad',this.itemImgListener)\n }\n }\n}\n</script>\n \n<style scoped>\n.home{\n height: 100vh;\n position: relative;\n}\n.nav-bar {\n background-color:#f53b57;\n color: #fff;\n /*font-weight: 700;*/\n /*position: fixed;*/\n /*left: 0;*/\n /*right: 0;*/\n /*top:0;*/\n /*z-index: 9;*/\n}\n.content{\n left: 0;\n right: 0;\n top:44px;\n bottom: 44px;\n overflow: hidden;\n position: absolute;\n}\n/*.content{*/\n/* height:calc(100% - 93px);*/\n/* overflow: hidden;*/\n/* margin-top: 44px;*/\n/*}*/\n.tab-control{\n position: relative;\n z-index: 24;\n}\n.pulldown {\n color: black;\n text-align: center;\n top: 30px;\n z-index: 100;\n font-size: 10px;\n color: rgb(150, 138, 138);\n}\n</style>\n"]}]}