diff --git a/pages/index/components/CompanyIntro.vue b/pages/index/components/CompanyIntro.vue index b00fa64..8693a1b 100644 --- a/pages/index/components/CompanyIntro.vue +++ b/pages/index/components/CompanyIntro.vue @@ -47,30 +47,39 @@ - + - + + + - - - - + + + + 长按识别二维码,添加经理微信 + + + + + + + + + + 15999928161 + + + - - @@ -238,61 +247,102 @@ export default { line-height: 1.45; } -/* 底部CTA - 橙色背景+图片叠加+二维码+文字 */ +/* 底部CTA - 橙色背景层+图片叠加层+内容层 */ .cta-footer { position: relative; - width: 100%; - display: flex; - flex-direction: column; - align-items: center; - padding: 0; - box-sizing: border-box; + width: 750rpx; + overflow: hidden; } -/* 橙色背景层 - 391x200 */ +/* 图片底层 - image_26原图 */ +.cta-overlay-img { + position: relative; + width: 100%; + z-index: 0; + display: block; +} +/* 橙色叠加层 - 在图片上方, 0.8高不透明度让亮橙色突出 */ .cta-orange-bg { position: absolute; top: 0; left: 0; width: 100%; - height: 400rpx; + height: 100%; background: #ff6800; - z-index: 0; -} -/* 图片叠加层 - 390x219 */ -.cta-overlay-img { - position: relative; - width: 100%; + opacity: 0.85; z-index: 1; - display: block; } -/* 二维码 - 104x104 居中 圆角10px 白底 */ -.qr-wrap { +/* 内容层 - absolute覆盖图片和橙色层, flex column 居中 */ +.cta-content { position: absolute; - top: 54rpx; - left: 50%; - transform: translateX(-50%); - width: 208rpx; - height: 208rpx; - background: #ffffff; - border-radius: 20rpx; - padding: 20rpx; - box-sizing: border-box; + top: 0; + left: 0; + width: 100%; + height: 100%; z-index: 2; display: flex; + flex-direction: column; + align-items: center; + padding-top: 33rpx; /* 17px → 33rpx */ + box-sizing: border-box; +} +/* 长按识别 14px Medium white → 27rpx */ +.cta-tip { + font-size: 27rpx; + font-weight: 500; + color: #ffffff; + line-height: 38rpx; +} +/* 装饰箭头图标 19×10px → 37×19rpx */ +.cta-arrow { + width: 37rpx; + height: 19rpx; + margin-top: 8rpx; /* 4px → 8rpx */ +} +/* 二维码 104×104px → 200×200rpx, 圆角10px → 19rpx */ +.qr-wrap { + margin-top: 13rpx; /* 7px → 13rpx */ + width: 200rpx; + height: 200rpx; + background: #ffffff; + border-radius: 19rpx; + padding: 0; + box-sizing: border-box; + display: flex; align-items: center; justify-content: center; + overflow: hidden; } .qr-img { width: 100%; height: 100%; } -/* 联系我们文字图 - 236x78 居中 */ +/* 电话栏 200×45px → 385×87rpx, #000 0.1透明, 圆角10px → 19rpx */ +.phone-pill { + margin-top: 23rpx; /* 12px → 23rpx */ + width: 385rpx; + height: 87rpx; + background: rgba(0, 0, 0, 0.1); + border-radius: 19rpx; + display: flex; + align-items: center; + justify-content: center; + gap: 12rpx; + box-sizing: border-box; +} +.phone-icon { + width: 35rpx; /* 18px → 35rpx */ + height: 35rpx; + flex-shrink: 0; +} +.phone-text { + font-size: 23rpx; /* 12px → 23rpx */ + font-weight: 700; + color: #ffffff; + line-height: 32rpx; +} +/* 联系我们 - 用户提供的image.png */ .cta-text-img { - position: absolute; - top: 256rpx; - left: 50%; - transform: translateX(-50%); - width: 472rpx; - z-index: 3; + margin-top: 19rpx; /* 10px → 19rpx */ + width: 569rpx; } diff --git a/pages/products/components/ActiveFilters.vue b/pages/products/components/ActiveFilters.vue index 3982234..e83e33d 100644 --- a/pages/products/components/ActiveFilters.vue +++ b/pages/products/components/ActiveFilters.vue @@ -18,7 +18,33 @@ export default { default: () => [] } }, + mounted() { + // 首次测量(可能为 0,因为 v-if 可能为 false) + this.$nextTick(() => this.emitHeight()) + }, + watch: { + // 筛选标签增减 → 高度变化 → 重新测量 + 'list.length'() { + this.$nextTick(() => this.emitHeight()) + } + }, methods: { + emitHeight() { + // v-if 为 false 时 #activeFilters 不存在,返回 0 + if (!this.list || this.list.length === 0) { + this.$emit('height-change', 0) + return + } + const query = uni.createSelectorQuery().in(this) + query.select('#activeFilters').boundingClientRect() + query.exec((res) => { + if (res && res[0]) { + this.$emit('height-change', res[0].height) + } else { + this.$emit('height-change', 0) + } + }) + }, onRemove(key) { this.$emit('remove', key) }, diff --git a/pages/products/components/CountryBar.vue b/pages/products/components/CountryBar.vue index a074108..ec8d4d5 100644 --- a/pages/products/components/CountryBar.vue +++ b/pages/products/components/CountryBar.vue @@ -30,7 +30,26 @@ export default { default: '' } }, + mounted() { + // 首次测量 + this.$nextTick(() => this.emitHeight()) + }, + watch: { + // 国家列表变化 → 换行行数可能变化 → 重新测量 + 'list.length'() { + this.$nextTick(() => this.emitHeight()) + } + }, methods: { + emitHeight() { + const query = uni.createSelectorQuery().in(this) + query.select('#countryBar').boundingClientRect() + query.exec((res) => { + if (res && res[0]) { + this.$emit('height-change', res[0].height) + } + }) + }, selectItem(item) { this.$emit('select', item.id) } diff --git a/pages/products/components/ProductGrid.vue b/pages/products/components/ProductGrid.vue index 2e22d70..1b4168d 100644 --- a/pages/products/components/ProductGrid.vue +++ b/pages/products/components/ProductGrid.vue @@ -81,7 +81,33 @@ export default { // 商品滚动区固定高度(px),由父组件动态计算传入 scrollHeight: { type: Number, default: 400 } }, + mounted() { + // 首次测量子分类高度 + this.$nextTick(() => this.emitSubHeight()) + }, + watch: { + // 子分类列表变化 → 重新测量 + 'subCategories.length'() { + this.$nextTick(() => this.emitSubHeight()) + } + }, methods: { + emitSubHeight() { + // v-if 为 false 时 #subCategories 不存在,返回 0 + if (!this.subCategories || this.subCategories.length === 0) { + this.$emit('sub-height-change', 0) + return + } + const query = uni.createSelectorQuery().in(this) + query.select('#subCategories').boundingClientRect() + query.exec((res) => { + if (res && res[0]) { + this.$emit('sub-height-change', res[0].height) + } else { + this.$emit('sub-height-change', 0) + } + }) + }, selectSub(id) { this.$emit('sub-select', id) }, onTapProduct(item) { this.$emit('product-click', item) }, onScrollToLower() { this.$emit('scroll-to-lower') } diff --git a/pages/products/components/SearchBar.vue b/pages/products/components/SearchBar.vue index 5c7f72b..094fea6 100644 --- a/pages/products/components/SearchBar.vue +++ b/pages/products/components/SearchBar.vue @@ -41,7 +41,20 @@ export default { this.statusBarHeight = 20 } }, + mounted() { + // 测量自身高度并 emit 给父组件(小程序端无法跨组件查询 DOM,必须自测量) + this.$nextTick(() => this.emitHeight()) + }, methods: { + emitHeight() { + const query = uni.createSelectorQuery().in(this) + query.select('#searchBar').boundingClientRect() + query.exec((res) => { + if (res && res[0]) { + this.$emit('height-change', res[0].height) + } + }) + }, onInput(e) { this.$emit('input', e.detail.value) }, diff --git a/pages/products/products.vue b/pages/products/products.vue index 0b15c80..8c34e3e 100644 --- a/pages/products/products.vue +++ b/pages/products/products.vue @@ -7,6 +7,7 @@ @input="onSearchInput" @blur="onSearchBlur" @filter="toggleFilter" + @height-change="onSearchBarHeight" /> @@ -14,6 +15,7 @@ :list="countries" :selected-id="selectedCountry" @select="selectCountry" + @height-change="onCountryBarHeight" /> @@ -32,6 +34,7 @@ :list="activeFilters" @remove="removeFilter" @clear-all="clearAllFilters" + @height-change="onActiveFiltersHeight" /> @@ -46,6 +49,7 @@ @sub-select="selectSubCategory" @product-click="goDetail" @scroll-to-lower="onScrollToLower" + @sub-height-change="onSubCategoriesHeight" /> @@ -83,6 +87,16 @@ export default { ProductGrid, FilterDrawer }, + watch: { + // 筛选标签增减 → 子组件会自测量并 emit,父组件这里不需要 watch + // 保留一个兜底:activeFilters.length 变化时主动触发一次重算 + 'activeFilters.length'() { + this.recomputeScrollHeight() + }, + 'subCategories.length'() { + this.recomputeScrollHeight() + } + }, data() { return { searchKeyword: '', @@ -110,25 +124,33 @@ export default { products: [], windowHeight: 667, scrollTopVal: 0, - productScrollHeight: 400 // 商品滚动区高度(px),动态计算 + productScrollHeight: 400, // 商品滚动区高度(px),由子组件测量后动态计算 + // 各子组件上报的高度(px),默认 0 + _searchBarH: 0, + _countryBarH: 0, + _activeFiltersH: 0, + _subCategoriesH: 0 } }, async onLoad() { try { const sysInfo = uni.getSystemInfoSync() - // windowHeight 已自动扣除 uni-app 默认导航栏 & TabBar 高度 - // 当前页是 navigationStyle:custom + TabBar 页,正好匹配可视区 - this.windowHeight = sysInfo.windowHeight || 667 + // tabBar 页 + navigationStyle:custom 时,windowHeight 在不同平台/版本可能不扣 tabBar + // 改用 screenHeight - tabBarHeight 计算,确保可视区高度正确 + const tabBarHeight = sysInfo.tabBarHeight || 50 + this.windowHeight = (sysInfo.screenHeight || 750) - tabBarHeight + console.log('[onLoad] screenHeight=' + sysInfo.screenHeight + + ', tabBarHeight=' + tabBarHeight + + ' → windowHeight=' + this.windowHeight) } catch (e) { this.windowHeight = 667 } await this.initData() this.loadSubCategories('all') await this.loadGoods(1) - // 首屏数据渲染完成后计算滚动区高度 - this.$nextTick(() => { - this.calcScrollHeight() - }) + // 首屏数据渲染完成后,子组件会通过 mounted 自行测量并 emit 高度 + // 这里兜底触发一次重算(防止某些端 mounted 比父组件 onLoad 晚) + this.recomputeScrollHeight() }, methods: { async initData() { @@ -259,10 +281,8 @@ export default { this.hasMore = this.products.length < total this.loadingMore = false - // 数据变更后重算滚动区高度(筛选标签/子分类数量变化会影响上方占位高度) - this.$nextTick(() => { - this.calcScrollHeight() - }) + // 数据变更后兜底重算滚动区高度(子组件会自行 emit,这里兜底) + this.recomputeScrollHeight() console.log( '[loadGoods] total=' + total + @@ -364,38 +384,46 @@ export default { }, /** - * 动态计算商品滚动区高度(px)。 - * 用 createSelectorQuery 测量 SearchBar / CountryBar / ActiveFilters / subCategories 的实际高度, - * 用 windowHeight 依次减去,得到 scroll-view 可用的固定高度。 + * 子组件高度上报回调 —— 每个子组件在 mounted / 内容变化时自行测量 DOM 高度, + * 通过 @height-change 事件上报给父组件。父组件汇总后重算滚动区高度。 + * + * 这种方式解决了 uni-app 小程序端 createSelectorQuery 无法跨组件查询 DOM 的问题: + * H5 端 DOM 全局可查,但小程序每个组件有独立节点树,页面级 select 选不到子组件内部的节点。 + */ + onSearchBarHeight(h) { + this._searchBarH = h + this.recomputeScrollHeight() + }, + onCountryBarHeight(h) { + this._countryBarH = h + this.recomputeScrollHeight() + }, + onActiveFiltersHeight(h) { + this._activeFiltersH = h + this.recomputeScrollHeight() + }, + onSubCategoriesHeight(h) { + this._subCategoriesH = h + this.recomputeScrollHeight() + }, + + /** + * 根据 4 个子组件上报的高度,计算 scroll-view 可用的固定高度。 * —— 完全符合 uni-app / 微信小程序官方文档「scroll-y 需给固定 height」的要求。 */ - calcScrollHeight() { - const query = uni.createSelectorQuery().in(this) - // 分别测量 4 个元素的 boundingClientRect - query.select('#searchBar').boundingClientRect() - query.select('#countryBar').boundingClientRect() - query.select('#activeFilters').boundingClientRect() - query.select('#subCategories').boundingClientRect() - query.exec((res) => { - // res[0]=searchBar, res[1]=countryBar, res[2]=activeFilters, res[3]=subCategories - // 注意:v-if 为 false 时 res[i] 可能为 null - const searchBarH = res[0] ? res[0].height : 0 - const countryBarH = res[1] ? res[1].height : 0 - const activeFiltersH = res[2] ? res[2].height : 0 - const subCategoriesH = res[3] ? res[3].height : 0 + recomputeScrollHeight() { + const totalUsed = this._searchBarH + this._countryBarH + + this._activeFiltersH + this._subCategoriesH + let h = this.windowHeight - totalUsed + // 最小值保护:至少 200px,避免极端情况 + if (h < 200) h = 200 + if (h > this.windowHeight) h = this.windowHeight - const totalUsed = searchBarH + countryBarH + activeFiltersH + subCategoriesH - let h = this.windowHeight - totalUsed - // 最小值保护:至少 200px,避免极端情况 - if (h < 200) h = 200 - if (h > this.windowHeight) h = this.windowHeight - - this.productScrollHeight = Math.round(h) - console.log('[calcScrollHeight] windowHeight=' + this.windowHeight + - ', searchBar=' + searchBarH + ', countryBar=' + countryBarH + - ', activeFilters=' + activeFiltersH + ', subCategories=' + subCategoriesH + - ' → scrollHeight=' + this.productScrollHeight) - }) + this.productScrollHeight = Math.round(h) + console.log('[recomputeScrollHeight] windowHeight=' + this.windowHeight + + ', searchBar=' + this._searchBarH + ', countryBar=' + this._countryBarH + + ', activeFilters=' + this._activeFiltersH + ', subCategories=' + this._subCategoriesH + + ' → scrollHeight=' + this.productScrollHeight) }, async selectCountry(id) { diff --git a/static/icons/home/icon_arrow_down.png b/static/icons/home/icon_arrow_down.png new file mode 100644 index 0000000..b682755 Binary files /dev/null and b/static/icons/home/icon_arrow_down.png differ diff --git a/static/icons/home/icon_phone.svg b/static/icons/home/icon_phone.svg new file mode 100644 index 0000000..ebdd94e --- /dev/null +++ b/static/icons/home/icon_phone.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/static/icons/home/icon_phone_dark.svg b/static/icons/home/icon_phone_dark.svg new file mode 100644 index 0000000..062d076 --- /dev/null +++ b/static/icons/home/icon_phone_dark.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/static/icons/home/icon_wechat.svg b/static/icons/home/icon_wechat.svg new file mode 100644 index 0000000..98864c2 --- /dev/null +++ b/static/icons/home/icon_wechat.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/static/icons/home/icon_wechat_dark.svg b/static/icons/home/icon_wechat_dark.svg new file mode 100644 index 0000000..35ae797 --- /dev/null +++ b/static/icons/home/icon_wechat_dark.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/static/images/home/Rectangle_187_1470_1653.png b/static/images/home/Rectangle_187_1470_1653.png index b0acb3e..7ac2c7f 100644 Binary files a/static/images/home/Rectangle_187_1470_1653.png and b/static/images/home/Rectangle_187_1470_1653.png differ diff --git a/static/images/home/contact_us.png b/static/images/home/contact_us.png new file mode 100644 index 0000000..aa7c017 Binary files /dev/null and b/static/images/home/contact_us.png differ diff --git a/static/images/home/cta_bg_new.png b/static/images/home/cta_bg_new.png new file mode 100644 index 0000000..ffbc3e6 Binary files /dev/null and b/static/images/home/cta_bg_new.png differ diff --git a/static/images/home/image_26_1496_1761.png b/static/images/home/image_26_1496_1761.png index 9510299..605d987 100644 Binary files a/static/images/home/image_26_1496_1761.png and b/static/images/home/image_26_1496_1761.png differ diff --git a/static/images/home/image_28_1498_1767.png b/static/images/home/image_28_1498_1767.png index 819b396..73367ed 100644 Binary files a/static/images/home/image_28_1498_1767.png and b/static/images/home/image_28_1498_1767.png differ diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map index 754220e..dbd4a43 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map @@ -1 +1 @@ -{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?cf79","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?4f29","uni-app:///App.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?b97f","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?2aad"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","Vue","use","zpMixins","config","productionTip","App","mpType","app","$mount","data","globalData","userInfo","baseUrl","onLaunch"],"mappings":";;;;;;;;;;;;;;AAAA;AAE2D;AAG3D;AAGA;AAAsB;AAAA;AAPtB;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAQ1DC,YAAG,CAACC,GAAG,CAACC,cAAQ,CAAC;AAEjBF,YAAG,CAACG,MAAM,CAACC,aAAa,GAAG,KAAK;AAChCC,YAAG,CAACC,MAAM,GAAG,KAAK;AAClB,IAAMC,GAAG,GAAG,IAAIP,YAAG,mBACZK,YAAG,EACR;AACF,UAAAE,GAAG,EAACC,MAAM,EAAE,C;;;;;;;;;;;;;ACjBZ;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACuD;AACL;AACa;;;AAG/D;AACiM;AACjM,gBAAgB,8MAAU;AAC1B,EAAE,yEAAM;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAsvB,CAAgB,kxBAAG,EAAC,C;;;;;;;;;;;;;;;;;;eCC1wB;EACAC;IACA;EACA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;IACA;IACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AAAqkC,CAAgB,ykCAAG,EAAC,C;;;;;;;;;;;ACAzlC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"common/main.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;import App from './App';\n\n// 全局mixins,用于实现setData等功能,请勿删除!';\nimport zpMixins from '@/uni_modules/zp-mixins/index.js';\n\n\nimport Vue from 'vue';\n\nVue.use(zpMixins);\n\nVue.config.productionTip = false;\nApp.mpType = 'app';\nconst app = new Vue({\n ...App\n});\napp.$mount();","var render, staticRenderFns, recyclableRender, components\nvar renderjs\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../app/HB/HBuilderX.5.24.2026081301/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 = \"App.vue\"\nexport default component.exports","import mod from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787638774032\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file +{"version":3,"sources":["uni-app:///main.js",null,"webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?4f29","uni-app:///App.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?b97f","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/App.vue?2aad"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","Vue","use","zpMixins","config","productionTip","App","mpType","app","$mount","data","globalData","userInfo","baseUrl","onLaunch"],"mappings":";;;;;;;;;;;;;;AAAA;AAE2D;AAG3D;AAGA;AAAsB;AAAA;AAPtB;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAQ1DC,YAAG,CAACC,GAAG,CAACC,cAAQ,CAAC;AAEjBF,YAAG,CAACG,MAAM,CAACC,aAAa,GAAG,KAAK;AAChCC,YAAG,CAACC,MAAM,GAAG,KAAK;AAClB,IAAMC,GAAG,GAAG,IAAIP,YAAG,mBACZK,YAAG,EACR;AACF,UAAAE,GAAG,EAACC,MAAM,EAAE,C;;;;;;;;;;;;;ACjBZ;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACuD;AACL;AACa;;;AAG/D;AACiM;AACjM,gBAAgB,8MAAU;AAC1B,EAAE,yEAAM;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACe,gF;;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAAsvB,CAAgB,kxBAAG,EAAC,C;;;;;;;;;;;;;;;;;;eCC1wB;EACAC;IACA;EACA;EACAC;IACAC;IACAC;EACA;EACAC;IACA;IACA;IACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AAAqkC,CAAgB,ykCAAG,EAAC,C;;;;;;;;;;;ACAzlC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"common/main.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;import App from './App';\n\n// 全局mixins,用于实现setData等功能,请勿删除!';\nimport zpMixins from '@/uni_modules/zp-mixins/index.js';\n\n\nimport Vue from 'vue';\n\nVue.use(zpMixins);\n\nVue.config.productionTip = false;\nApp.mpType = 'app';\nconst app = new Vue({\n ...App\n});\napp.$mount();","var render, staticRenderFns, recyclableRender, components\nvar renderjs\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../app/HB/HBuilderX.5.24.2026081301/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 = \"App.vue\"\nexport default component.exports","import mod from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=script&lang=js&\"","\n\n","import mod from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./App.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787640418582\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map index 81346ad..86d6be8 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?9285","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?f0e9","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?7671","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?0f19","uni-app:///pages/index/index.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?83d5","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?fa89"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","HeroBanner","StepsFlow","PodCatalog","PlatformFeatures","WhyChoose","CompanyIntro","data","trustStats","stepList","featureList","reasonList","companyFeatures","podCountries","podProducts","currentStep","currentFeat","_autoPlayTimer","onLoad","onShow","onHide","onUnload","methods","loadPodCountries","res","countries","id","name","console","loadPodProducts","params","page","pageSize","items","image","onPodCountryChange","onGoProducts","uni","url","onGoDetail","startAutoPlay","stopAutoPlay","clearInterval","onStepChange","onFeatChange"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkH;AAClH;AACyD;AACL;AACa;;;AAGjE;AACuM;AACvM,gBAAgB,8MAAU;AAC1B,EAAE,2EAAM;AACR,EAAE,gFAAM;AACR,EAAE,yFAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,oFAAU;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;;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAAsxB,CAAgB,oxBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;AC4C1yB;AACA;AAEA;AAMA;EAAA;IAAA;EAAA,CAAC;AAAD;AAAA;EAAA;IAAA;EAAA,CAAC;AAAD;AAAA;EAAA;IAAA;EAAA,CAAC;AAAD;AAAA;EAAA;IAAA;EAAA,CAAC;AAAD;AAAA;EAAA;IAAA;EAAA,CAAC;AAAD;AAAA;EAAA;IAAA;EAAA,CAAC;AAAD;AAEA;AACA;AAAA,eAEA;EACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACA;MACAC;MACAC;MACAC;IACA;EACA;EACAC;IAAA;IAAA;MAAA;QAAA;UAAA;YAAA;cAAA;cAAA,OACA;YAAA;cAAA;cAAA,OACA;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA;EACA;EACAC;IACA;IACA;EACA;EACAC;IACA;IACA;EACA;EACAC;IACA;EACA;EACAC;IACAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;gBAAA,OAEA;cAAA;gBAAAC;gBACAjB;gBACAkB;kBAAAC;kBAAAC;gBAAA;gBACApB;kBACAkB;oBAAAC;oBAAAC;kBAAA;gBACA;gBACA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAC;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAEAC;kBAAAC;kBAAAC;gBAAA;gBACA;kBACAF;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAAN;gBACAjB;kBAAA0B;gBAAA;gBACAA;gBACA;kBAAA;oBACAP;oBACAC;oBACAO;kBACA;gBAAA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAN;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEAO;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MACAC;QACAC;MACA;IACA;IACAC;MACAF;QACAC;MACA;IACA;IAEA;AACA;AACA;IAEA;AACA;AACA;AACA;AACA;IACAE;MAAA;MACA;MACA;QACA;QACA;QACA;UACA;QACA;QACA;UACA;QACA;MACA;IACA;IAEA;AACA;AACA;IACAC;MACA;QACAC;QACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;IACAC;MACA;MACA;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACxMA;AAAA;AAAA;AAAA;AAAinC,CAAgB,2kCAAG,EAAC,C;;;;;;;;;;;ACAroC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/index/index.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./index.vue?vue&type=template&id=57280228&\"\nvar renderjs\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/index/index.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=template&id=57280228&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787638773707\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file +{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?9285","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?f0e9","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?7671","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?0f19","uni-app:///pages/index/index.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?83d5","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/index.vue?fa89"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","HeroBanner","StepsFlow","PodCatalog","PlatformFeatures","WhyChoose","CompanyIntro","data","trustStats","stepList","featureList","reasonList","companyFeatures","podCountries","podProducts","currentStep","currentFeat","_autoPlayTimer","onLoad","onShow","onHide","onUnload","methods","loadPodCountries","res","countries","id","name","console","loadPodProducts","params","page","pageSize","items","image","onPodCountryChange","onGoProducts","uni","url","onGoDetail","startAutoPlay","stopAutoPlay","clearInterval","onStepChange","onFeatChange"],"mappings":"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","file":"pages/index/index.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/index/index.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./index.vue?vue&type=template&id=57280228&\"\nvar renderjs\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/index/index.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=template&id=57280228&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./index.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787640418242\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product-detail/product-detail.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product-detail/product-detail.js.map index 0cd563c..3195df1 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product-detail/product-detail.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/product-detail/product-detail.js.map @@ -1 +1 @@ -{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?03a3","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?5b31","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?5df2","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?23db","uni-app:///pages/product-detail/product-detail.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?6ab6","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?73f4"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","DetailSwiper","ProductInfo","ColorSelector","SizeSelector","ParamsTable","SizeChart","PackagingSpec","data","statusBarHeight","productId","loading","product","name","sku","country","price","symbol","integer","decimal","quickInfo","productImages","colors","selectedColorId","sizes","selectedSize","productParams","sizeChart","variants","mediaByColor","defaultImages","packaging","onLoad","methods","loadDetail","goodId","res","detail","console","applyDetail","label","value","slice","sort","map","filter","id","buildMediaByColor","list","syncImagesByColor","parsePrice","buildParams","params","expandable","buildExpandableText","buildSizeChart","size","shoulder","chest","length","sleeve","unit","columns","rows","buildPackaging","sizeId","dimension","cm","in","volume","weight","findVariant","v","String","syncPriceByVariant","selectColor","selectSize","computed","colorListWithAvailability","enabled","sizeListWithAvailability"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,sBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2H;AAC3H;AACkE;AACL;AACa;;;AAG1E;AACuM;AACvM,gBAAgB,8MAAU;AAC1B,EAAE,oFAAM;AACR,EAAE,yFAAM;AACR,EAAE,kGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,6FAAU;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,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC/BA;AAAA;AAAA;AAAA;AAA+xB,CAAgB,6xBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;AC4DnzB;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA,eAEA;EACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;QACAC;UAAAC;UAAAC;UAAAC;QAAA;QACAC;MACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACA;MACAC;MACA;MACAC;MACA;MACAC;MACAC;IACA;EACA;EACAC;IACA;MACA;MACA;IACA;MACA;IACA;IACA;MACA;MACA;IACA;EACA;EACAC;IACAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,IACAC;kBAAA;kBAAA;gBAAA;gBAAA;cAAA;gBACA;gBAAA;gBAAA;gBAAA,OAEA;cAAA;gBAAAC;gBACAC;gBACA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAC;cAAA;gBAAA;gBAEA;gBAAA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;IACAC;MACA;MACA;QACA1B;QACAC;QACAC;QACAC;QACAI,YACA;UAAAoB;UAAAC;QAAA,GACA;UACAD;UACAC;QACA,GACA;UAAAD;UAAAC;QAAA,GACA;UAAAD;UAAAC;QAAA;MAEA;;MAEA;MACA;MACA;MACA;MACA;MACA,yCACAC,QACAC;QAAA;MAAA,GACAC;QAAA;MAAA,GACAC;QAAA;MAAA;MACA;QACAf;MACA;MACA;QACAA;MACA;MACA;MACA;;MAEA;MACA,6DACAe;QAAA;MAAA,GACAH,QACAC;QAAA;MAAA,GACAC;QAAA;UAAAE;UAAAjC;UAAA4B;QAAA;MAAA;MACA;MACA;;MAEA;MACA,2DACAI;QAAA;MAAA,GACAH,QACAC;QAAA;MAAA,GACAC;QAAA;MAAA;MACA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAG;MACA;MACA;QACAC;UACA;UACA;YAAA;UAAA;UACA;QACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;MACA;QACAhC;QACAC;MACA;MACA;QAAAF;QAAAC;QAAAC;MAAA;IACA;IAEA;AACA;AACA;IACAgC;MACA;MACA;MACA;QACAC;UAAAZ;UAAAC;QAAA;MACA;MACA;QACAW;UAAAZ;UAAAC;QAAA;MACA;MACA;MACA;QACAW;UAAAZ;UAAAa;UAAAZ;QAAA;MACA;MACA;IACA;IAEA;AACA;AACA;IACAa;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;IACAC;MACA;MACA;MACA;QACA;QACA;UACA;YAAA;UAAA;UACA;QACA;QACA;UACAC;UACAC;UACAC;UACAC;UACAC;QACA;MACA;MACA;QAAAC;QAAAC;QAAAC;MAAA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;MACApC;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACAgB;UACAY;UACAS;UACAC;YACAC;YACAC;UACA;UACAC;YACAF;YACAC;UACA;UACAE;YACAH;YACAC;UACA;QACA;MACA;MACA;MACA;MACA;MACA;QAAA;MAAA;MACA;QACA;QACA;QACA;MACA;MACA;QACAP;QACAC;QACAC;MACA;IACA;IAEA;AACA;AACA;AACA;IACAQ;MACA;MACA;MACA;MACA,OACA,mBACA;QAAA,OACAC,KACAC,yCACAA;MAAA,EACA;IAEA;IACAC;MACA;MACA;QACA;MACA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MACA;MACA;IACA;EACA;EACAC;IACA;AACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;QACA;UACAC,+BACA;YAAA,OACAP,KACAA,uBACAC,sCACAA;UAAA,EACA;QACA;QACA;UAAAM;QAAA;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;QACA;UACAD,+BACA;YAAA,OACAP,KACAA,uBACAC,yCACAA;UAAA,EACA;QACA;QACA;UAAA5D;UAAAkE;QAAA;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC1bA;AAAA;AAAA;AAAA;AAA0nC,CAAgB,olCAAG,EAAC,C;;;;;;;;;;;ACA9oC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/product-detail/product-detail.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/product-detail/product-detail.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./product-detail.vue?vue&type=template&id=685304e6&\"\nvar renderjs\nimport script from \"./product-detail.vue?vue&type=script&lang=js&\"\nexport * from \"./product-detail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./product-detail.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/product-detail/product-detail.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=template&id=685304e6&\"","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.colors.length\n var g1 = _vm.colors.length\n var g2 = _vm.sizes.length\n var g3 = _vm.sizes.length\n var g4 = _vm.productParams.length\n var g5 = _vm.productParams.length\n var g6 = _vm.sizeChart.rows && _vm.sizeChart.rows.length\n var g7 = _vm.sizeChart.rows && _vm.sizeChart.rows.length\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n g0: g0,\n g1: g1,\n g2: g2,\n g3: g3,\n g4: g4,\n g5: g5,\n g6: g6,\n g7: g7,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787638774090\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file +{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?03a3","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?5b31","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?5df2","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?23db","uni-app:///pages/product-detail/product-detail.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?6ab6","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/product-detail/product-detail.vue?73f4"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","DetailSwiper","ProductInfo","ColorSelector","SizeSelector","ParamsTable","SizeChart","PackagingSpec","data","statusBarHeight","productId","loading","product","name","sku","country","price","symbol","integer","decimal","quickInfo","productImages","colors","selectedColorId","sizes","selectedSize","productParams","sizeChart","variants","mediaByColor","defaultImages","packaging","onLoad","methods","loadDetail","goodId","res","detail","console","applyDetail","label","value","slice","sort","map","filter","id","buildMediaByColor","list","syncImagesByColor","parsePrice","buildParams","params","expandable","buildExpandableText","buildSizeChart","size","shoulder","chest","length","sleeve","unit","columns","rows","buildPackaging","sizeId","dimension","cm","in","volume","weight","findVariant","v","String","syncPriceByVariant","selectColor","selectSize","computed","colorListWithAvailability","enabled","sizeListWithAvailability"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,sBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2H;AAC3H;AACkE;AACL;AACa;;;AAG1E;AACuM;AACvM,gBAAgB,8MAAU;AAC1B,EAAE,oFAAM;AACR,EAAE,yFAAM;AACR,EAAE,kGAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,6FAAU;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,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AC/BA;AAAA;AAAA;AAAA;AAA+xB,CAAgB,6xBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;AC4DnzB;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA,eAEA;EACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;QACAC;UAAAC;UAAAC;UAAAC;QAAA;QACAC;MACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MACA;MACAC;MACA;MACAC;MACA;MACAC;MACAC;IACA;EACA;EACAC;IACA;MACA;MACA;IACA;MACA;IACA;IACA;MACA;MACA;IACA;EACA;EACAC;IACAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,IACAC;kBAAA;kBAAA;gBAAA;gBAAA;cAAA;gBACA;gBAAA;gBAAA;gBAAA,OAEA;cAAA;gBAAAC;gBACAC;gBACA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAC;cAAA;gBAAA;gBAEA;gBAAA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;IACAC;MACA;MACA;QACA1B;QACAC;QACAC;QACAC;QACAI,YACA;UAAAoB;UAAAC;QAAA,GACA;UACAD;UACAC;QACA,GACA;UAAAD;UAAAC;QAAA,GACA;UAAAD;UAAAC;QAAA;MAEA;;MAEA;MACA;MACA;MACA;MACA;MACA,yCACAC,QACAC;QAAA;MAAA,GACAC;QAAA;MAAA,GACAC;QAAA;MAAA;MACA;QACAf;MACA;MACA;QACAA;MACA;MACA;MACA;;MAEA;MACA,6DACAe;QAAA;MAAA,GACAH,QACAC;QAAA;MAAA,GACAC;QAAA;UAAAE;UAAAjC;UAAA4B;QAAA;MAAA;MACA;MACA;;MAEA;MACA,2DACAI;QAAA;MAAA,GACAH,QACAC;QAAA;MAAA,GACAC;QAAA;MAAA;MACA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;;MAEA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAG;MACA;MACA;QACAC;UACA;UACA;YAAA;UAAA;UACA;QACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;MACA;QACAhC;QACAC;MACA;MACA;QAAAF;QAAAC;QAAAC;MAAA;IACA;IAEA;AACA;AACA;IACAgC;MACA;MACA;MACA;QACAC;UAAAZ;UAAAC;QAAA;MACA;MACA;QACAW;UAAAZ;UAAAC;QAAA;MACA;MACA;MACA;QACAW;UAAAZ;UAAAa;UAAAZ;QAAA;MACA;MACA;IACA;IAEA;AACA;AACA;IACAa;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;IACAC;MACA;MACA;MACA;QACA;QACA;UACA;YAAA;UAAA;UACA;QACA;QACA;UACAC;UACAC;UACAC;UACAC;UACAC;QACA;MACA;MACA;QAAAC;QAAAC;QAAAC;MAAA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;MACA;MACApC;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACAgB;UACAY;UACAS;UACAC;YACAC;YACAC;UACA;UACAC;YACAF;YACAC;UACA;UACAE;YACAH;YACAC;UACA;QACA;MACA;MACA;MACA;MACA;MACA;QAAA;MAAA;MACA;QACA;QACA;QACA;MACA;MACA;QACAP;QACAC;QACAC;MACA;IACA;IAEA;AACA;AACA;AACA;IACAQ;MACA;MACA;MACA;MACA,OACA,mBACA;QAAA,OACAC,KACAC,yCACAA;MAAA,EACA;IAEA;IACAC;MACA;MACA;QACA;MACA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA;MACA;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MACA;MACA;IACA;EACA;EACAC;IACA;AACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;QACA;UACAC,+BACA;YAAA,OACAP,KACAA,uBACAC,sCACAA;UAAA,EACA;QACA;QACA;UAAAM;QAAA;MACA;IACA;IACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;QACA;UACAD,+BACA;YAAA,OACAP,KACAA,uBACAC,yCACAA;UAAA,EACA;QACA;QACA;UAAA5D;UAAAkE;QAAA;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC1bA;AAAA;AAAA;AAAA;AAA0nC,CAAgB,olCAAG,EAAC,C;;;;;;;;;;;ACA9oC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/product-detail/product-detail.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/product-detail/product-detail.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./product-detail.vue?vue&type=template&id=685304e6&\"\nvar renderjs\nimport script from \"./product-detail.vue?vue&type=script&lang=js&\"\nexport * from \"./product-detail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./product-detail.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/product-detail/product-detail.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=template&id=685304e6&\"","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.colors.length\n var g1 = _vm.colors.length\n var g2 = _vm.sizes.length\n var g3 = _vm.sizes.length\n var g4 = _vm.productParams.length\n var g5 = _vm.productParams.length\n var g6 = _vm.sizeChart.rows && _vm.sizeChart.rows.length\n var g7 = _vm.sizeChart.rows && _vm.sizeChart.rows.length\n _vm.$mp.data = Object.assign(\n {},\n {\n $root: {\n g0: g0,\n g1: g1,\n g2: g2,\n g3: g3,\n g4: g4,\n g5: g5,\n g6: g6,\n g7: g7,\n },\n }\n )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./product-detail.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787640418637\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/products/products.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/products/products.js.map index 0b8afde..d9d9d41 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/products/products.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/products/products.js.map @@ -1 +1 @@ -{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?7eaf","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?5c88","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?dd0c","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?78c7","uni-app:///pages/products/products.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?c445","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?eeac"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","SearchBar","CountryBar","ActiveFilters","CategorySidebar","ProductGrid","FilterDrawer","data","searchKeyword","selectedCountry","countries","activeCategory","categories","id","name","subCategories","activeSubCategory","activeFilters","showFilter","filterGroups","pagination","total","current","pageSize","hasMore","loadingMore","products","windowHeight","scrollTopVal","productScrollHeight","onLoad","sysInfo","methods","initData","countriesRes","countriesData","icon","console","loadCategoryData","params","countryId","Promise","categoriesRes","tagGroupsRes","categoriesData","children","productCount","tagGroupsData","title","tags","color","fontColor","selected","loadGoods","currentPage","res","items","page","price","image","text","bg","buildQueryParams","filter","map","tagGroupId","tagIds","codeToEmoji","loadSubCategories","subCats","onSearchInput","onSearchBlur","onScrollToLower","resetScrollToTop","calcScrollHeight","query","selectCountry","country","filters","key","label","selectCategory","selectSubCategory","toggleFilter","closeFilter","toggleFilterTag","group","removeFilter","groupId","groups","clearAllFilters","hasCountry","resetFilters","confirmFilters","countryFilter","goDetail","uni","url"],"mappings":"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A;gBAAA;gBAAA;gBAEAA;gBACA;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;AACA;AACA;AACA;IACAyB;MACA;QACAL;QACAlC;MACA;MACA;QACAgB;MACA;MACA;MACA;QACAA;MACA;MACA;MACA;QACAA;MACA;MACA,yCACAwB;QAAA;MAAA,GACAC;QAAA;UACAC;UACAC;YAAA;UAAA;QACA;MAAA;MACA;QACA3B;MACA;MACA;IACA;IAEA4B;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACA;IAEAC;MACA;MACA;QACA;UAAA;QAAA;QACA;UACAC;YACA;cAAAxD;cAAAC;YAAA;UACA;QACA;MACA;MACA;MACA;IACA;IAEAwD;MACA;MACA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;MACAC;MACAA;MACAA;MACAA;MACAA;QACA;QACA;QACA;QACA;QACA;QACA;QAEA;QACA;QACA;QACA;QACA;QAEA;QACAtC,uEACA,8DACA,4EACA;MACA;IACA;IAEAuC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,MAEA;kBAAA;kBAAA;gBAAA;gBACA;gBACA;kBAAA;gBAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAIA;gBACAC;kBAAA;gBAAA;gBACAC;kBAAA;gBAAA;gBACA;kBACAA;oBACAC;oBACAC;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;QACAjC;MACA;QACAA;MACA;MACAkC;MACA;IACA;IAEAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAT;kBAAA;gBAAA;gBAAA,MAEAC;kBAAA;kBAAA;gBAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAAA,MAIAA;kBAAA;kBAAA;gBAAA;gBACAS;gBACAC;kBACA;oBACA;sBAAArC;oBAAA;kBACA;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAIA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAsC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAC;kBAAA;gBAAA;gBACA;gBAAA,MACAA;kBAAA;kBAAA;gBAAA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAEAF;kBACA;oBAAArC;kBAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAwC;MACA;QACA;UAAAxC;QAAA;MACA;MACA;IACA;IAEAyC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAf;gBACAgB;kBAAA;gBAAA;gBACA;gBACA;kBACA;oBACA,wBACA/B;sBAAA;oBAAA,GACAC;sBAAA;oBAAA;oBACA;sBACAc;wBACAC;wBACAC;sBACA;oBACA;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAe;MACAC;QACAC;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;AC1hBA;AAAA;AAAA;AAAA;AAAonC,CAAgB,8kCAAG,EAAC,C;;;;;;;;;;;ACAxoC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/products/products.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/products/products.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./products.vue?vue&type=template&id=6b9ce706&\"\nvar renderjs\nimport script from \"./products.vue?vue&type=script&lang=js&\"\nexport * from \"./products.vue?vue&type=script&lang=js&\"\nimport style0 from \"./products.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/products/products.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=template&id=6b9ce706&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787638774096\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file +{"version":3,"sources":["uni-app:///main.js","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?7eaf","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?5c88","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?dd0c","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?78c7","uni-app:///pages/products/products.vue","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?c445","webpack:///C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/products/products.vue?eeac"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","components","SearchBar","CountryBar","ActiveFilters","CategorySidebar","ProductGrid","FilterDrawer","watch","data","searchKeyword","selectedCountry","countries","activeCategory","categories","id","name","subCategories","activeSubCategory","activeFilters","showFilter","filterGroups","pagination","total","current","pageSize","hasMore","loadingMore","products","windowHeight","scrollTopVal","productScrollHeight","_searchBarH","_countryBarH","_activeFiltersH","_subCategoriesH","onLoad","sysInfo","tabBarHeight","console","methods","initData","countriesRes","countriesData","icon","loadCategoryData","params","countryId","Promise","categoriesRes","tagGroupsRes","categoriesData","children","productCount","tagGroupsData","title","tags","color","fontColor","selected","loadGoods","currentPage","res","items","page","price","image","text","bg","buildQueryParams","filter","map","tagGroupId","tagIds","codeToEmoji","loadSubCategories","subCats","onSearchInput","onSearchBlur","onScrollToLower","resetScrollToTop","onSearchBarHeight","onCountryBarHeight","onActiveFiltersHeight","onSubCategoriesHeight","recomputeScrollHeight","selectCountry","country","filters","key","label","selectCategory","selectSubCategory","toggleFilter","closeFilter","toggleFilterTag","group","removeFilter","groupId","groups","clearAllFilters","hasCountry","resetFilters","confirmFilters","countryFilter","goDetail","uni","url"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,iBAAI,CAAC,C;;;;;;;;;;;;;ACLhB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAqH;AACrH;AAC4D;AACL;AACa;;;AAGpE;AACuM;AACvM,gBAAgB,8MAAU;AAC1B,EAAE,8EAAM;AACR,EAAE,mFAAM;AACR,EAAE,4FAAe;AACjB;AACA;AACA;AACA;AACA;AACA,EAAE,uFAAU;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;;;;;;;;;;;;;;ACRA;AAAA;AAAA;AAAA;AAAyxB,CAAgB,uxBAAG,EAAC,C;;;;;;;;;;;;;;;;;;;;;;;AC4E7yB;AACA;AACA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA;EAAA;IAAA;EAAA;AAAA;AAAA,eAEA;EACAC;IACAC;IACAC;IACAC;IACAC;IACAC;IACAC;EACA;EACAC;IACA;IACA;IACA;MACA;IACA;IACA;MACA;IACA;EACA;EACAC;IACA;MACAC;MACAC;MACAC;MACAC;MACAC,aACA;QACAC;QACAC;MACA,EACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;QACAC;QACAC;QACAC;MACA;MACAC;MACAC;MACAC;MACAC;MACAC;MACAC;MAAA;MACA;MACAC;MACAC;MACAC;MACAC;IACA;EACA;EACAC;IAAA;IAAA;MAAA;MAAA;QAAA;UAAA;YAAA;cACA;gBACAC,mCACA;gBACA;gBACAC;gBACA;gBACAC,8DACA,mCACA;cACA;gBACA;cACA;cAAA;cAAA,OACA;YAAA;cACA;cAAA;cAAA,OACA;YAAA;cACA;cACA;cACA;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA;EACA;EACAC;IACAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAAA;gBAAA,OAGA;cAAA;gBAAAC;gBACAC;gBACA/B;kBAAA;oBACAG;oBACAC;oBACA4B;kBACA;gBAAA;gBACA;;gBAEA;gBAAA;gBAAA,OACA;cAAA;gBAEAL;gBACAA;gBACAA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;IACAM;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAEAC;kBAAAC;gBAAA;gBAAA;gBAAA,OACAC,aACA,oCACA,kCACA;cAAA;gBAAA;gBAAA;gBAHAC;gBAAAC;gBAKA;gBACAC;gBACArC;kBAAAC;kBAAAC;kBAAAoC;kBAAAC;gBAAA;gBACAF;kBACArC;oBACAC;oBACAC;oBACAoC;oBACAC;kBACA;gBACA;;gBAEA;gBACAC;gBACAjC;kBAAA;oBACAN;oBACAwC;oBACAC;sBAAA;wBACAzC;wBACAC;wBACAyC;wBACAC;wBACAL;sBACA;oBAAA;oBACAM;kBACA;gBAAA;gBAEA;gBACA;gBACA;gBACA;gBACA;gBAEApB,YACA,yDACA,sCACA,wCACA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;AACA;IACAqB;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA;gBAEAC;gBACApC,6CAEA;gBACAqB;gBAEAP;gBAAA;gBAAA,OAEA;cAAA;gBAAAuB;gBACArD;kBAAAsD;kBAAAxC;kBAAAyC;kBAAAvC;gBAAA;gBACAsC;gBAEAnC;kBAAA;oBACAb;oBACAC;oBACAiD;oBACAC;oBACAV;sBACA;wBACAW;wBACAC;wBACAX;sBACA;oBACA;kBACA;gBAAA;gBAEAlC;gBAEA;kBACA;kBACA;kBACA;gBACA;kBACA;kBACA;gBACA;gBAEA;kBACAA;kBACAC;kBACAC;gBACA;gBACA;gBACA;;gBAEA;gBACA;gBAEAc,YACA,+BACA,0BACA,+BACA,uCACA,8BACA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA;gBAEAA;gBACA;gBACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IAEA;IAEA;AACA;AACA;AACA;AACA;AACA;IACA8B;MACA;QACAL;QACAvC;MACA;MACA;QACAqB;MACA;MACA;MACA;QACAA;MACA;MACA;MACA;QACAA;MACA;MACA,yCACAwB;QAAA;MAAA,GACAC;QAAA;UACAC;UACAC;YAAA;UAAA;QACA;MAAA;MACA;QACA3B;MACA;MACA;IACA;IAEA4B;MACA;MACA;MACA;MACA;MACA;MACA;MACA;IACA;IAEAC;MACA;MACA;QACA;UAAA;QAAA;QACA;UACAC;YACA;cAAA7D;cAAAC;YAAA;UACA;QACA;MACA;MACA;MACA;IACA;IAEA6D;MACA;MACA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;IACAC;MAAA;MACA;MACA;QACA;MACA;IACA;IAEA;AACA;AACA;AACA;AACA;AACA;AACA;IACAC;MACA;MACA;IACA;IACAC;MACA;MACA;IACA;IACAC;MACA;MACA;IACA;IACAC;MACA;MACA;IACA;IAEA;AACA;AACA;AACA;IACAC;MACA,uDACA;MACA;MACA;MACA;MACA;MAEA;MACA9C,0EACA,0EACA,wFACA;IACA;IAEA+C;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBAAA,MAEA;kBAAA;kBAAA;gBAAA;gBACA;gBACA;kBAAA;gBAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAIA;gBACAC;kBAAA;gBAAA;gBACAC;kBAAA;gBAAA;gBACA;kBACAA;oBACAC;oBACAC;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;IACA;IAEAC;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;QACApC;MACA;QACAA;MACA;MACAqC;MACA;IACA;IAEAC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAT;kBAAA;gBAAA;gBAAA,MAEAC;kBAAA;kBAAA;gBAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAAA,MAIAA;kBAAA;kBAAA;gBAAA;gBACAS;gBACAC;kBACA;oBACA;sBAAAxC;oBAAA;kBACA;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAAA;cAAA;gBAIA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAyC;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAC;kBAAA;gBAAA;gBACA;gBAAA,MACAA;kBAAA;kBAAA;gBAAA;gBACA;gBAAA;gBAAA,OACA;cAAA;gBAEAF;kBACA;oBAAAxC;kBAAA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEA2C;MACA;QACA;UAAA3C;QAAA;MACA;MACA;IACA;IAEA4C;MAAA;MAAA;QAAA;QAAA;UAAA;YAAA;cAAA;gBACAf;gBACAgB;kBAAA;gBAAA;gBACA;gBACA;kBACA;oBACA,wBACAlC;sBAAA;oBAAA,GACAC;sBAAA;oBAAA;oBACA;sBACAiB;wBACAC;wBACAC;sBACA;oBACA;kBACA;gBACA;gBACA;gBACA;gBAAA;gBAAA,OACA;cAAA;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA;IACA;IAEAe;MACAC;QACAC;MACA;IACA;EACA;AACA;AAAA,2B;;;;;;;;;;;;;ACtjBA;AAAA;AAAA;AAAA;AAAonC,CAAgB,8kCAAG,EAAC,C;;;;;;;;;;;ACAxoC;AACA,OAAO,KAAU,EAAE,kBAKd","file":"pages/products/products.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/products/products.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./products.vue?vue&type=template&id=6b9ce706&\"\nvar renderjs\nimport script from \"./products.vue?vue&type=script&lang=js&\"\nexport * from \"./products.vue?vue&type=script&lang=js&\"\nimport style0 from \"./products.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../app/HB/HBuilderX.5.24.2026081301/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/products/products.vue\"\nexport default component.exports","export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=template&id=6b9ce706&\"","var components\nvar render = function () {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import mod from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../app/HB/HBuilderX.5.24.2026081301/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./products.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1787640418641\n var cssReload = require(\"C:/gs/app/HB/HBuilderX.5.24.2026081301/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":""} \ No newline at end of file diff --git a/unpackage/dist/dev/mp-weixin/pages/products/products.js b/unpackage/dist/dev/mp-weixin/pages/products/products.js index a4990e5..3017bb1 100644 --- a/unpackage/dist/dev/mp-weixin/pages/products/products.js +++ b/unpackage/dist/dev/mp-weixin/pages/products/products.js @@ -188,6 +188,16 @@ var _default = { ProductGrid: ProductGrid, FilterDrawer: FilterDrawer }, + watch: { + // 筛选标签增减 → 子组件会自测量并 emit,父组件这里不需要 watch + // 保留一个兜底:activeFilters.length 变化时主动触发一次重算 + 'activeFilters.length': function activeFiltersLength() { + this.recomputeScrollHeight(); + }, + 'subCategories.length': function subCategoriesLength() { + this.recomputeScrollHeight(); + } + }, data: function data() { return { searchKeyword: '', @@ -213,21 +223,29 @@ var _default = { products: [], windowHeight: 667, scrollTopVal: 0, - productScrollHeight: 400 // 商品滚动区高度(px),动态计算 + productScrollHeight: 400, + // 商品滚动区高度(px),由子组件测量后动态计算 + // 各子组件上报的高度(px),默认 0 + _searchBarH: 0, + _countryBarH: 0, + _activeFiltersH: 0, + _subCategoriesH: 0 }; }, onLoad: function onLoad() { var _this = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { - var sysInfo; + var sysInfo, tabBarHeight; return _regenerator.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: try { - sysInfo = uni.getSystemInfoSync(); // windowHeight 已自动扣除 uni-app 默认导航栏 & TabBar 高度 - // 当前页是 navigationStyle:custom + TabBar 页,正好匹配可视区 - _this.windowHeight = sysInfo.windowHeight || 667; + sysInfo = uni.getSystemInfoSync(); // tabBar 页 + navigationStyle:custom 时,windowHeight 在不同平台/版本可能不扣 tabBar + // 改用 screenHeight - tabBarHeight 计算,确保可视区高度正确 + tabBarHeight = sysInfo.tabBarHeight || 50; + _this.windowHeight = (sysInfo.screenHeight || 750) - tabBarHeight; + console.log('[onLoad] screenHeight=' + sysInfo.screenHeight + ', tabBarHeight=' + tabBarHeight + ' → windowHeight=' + _this.windowHeight); } catch (e) { _this.windowHeight = 667; } @@ -238,10 +256,9 @@ var _default = { _context.next = 6; return _this.loadGoods(1); case 6: - // 首屏数据渲染完成后计算滚动区高度 - _this.$nextTick(function () { - _this.calcScrollHeight(); - }); + // 首屏数据渲染完成后,子组件会通过 mounted 自行测量并 emit 高度 + // 这里兜底触发一次重算(防止某些端 mounted 比父组件 onLoad 晚) + _this.recomputeScrollHeight(); case 7: case "end": return _context.stop(); @@ -432,10 +449,8 @@ var _default = { _this4.hasMore = _this4.products.length < total; _this4.loadingMore = false; - // 数据变更后重算滚动区高度(筛选标签/子分类数量变化会影响上方占位高度) - _this4.$nextTick(function () { - _this4.calcScrollHeight(); - }); + // 数据变更后兜底重算滚动区高度(子组件会自行 emit,这里兜底) + _this4.recomputeScrollHeight(); console.log('[loadGoods] total=' + total + ', page=' + currentPage + ', items=' + products.length + ', loaded=' + _this4.products.length + ', hasMore=' + _this4.hasMore); _context4.next = 25; break; @@ -542,64 +557,70 @@ var _default = { }); }, /** - * 动态计算商品滚动区高度(px)。 - * 用 createSelectorQuery 测量 SearchBar / CountryBar / ActiveFilters / subCategories 的实际高度, - * 用 windowHeight 依次减去,得到 scroll-view 可用的固定高度。 + * 子组件高度上报回调 —— 每个子组件在 mounted / 内容变化时自行测量 DOM 高度, + * 通过 @height-change 事件上报给父组件。父组件汇总后重算滚动区高度。 + * + * 这种方式解决了 uni-app 小程序端 createSelectorQuery 无法跨组件查询 DOM 的问题: + * H5 端 DOM 全局可查,但小程序每个组件有独立节点树,页面级 select 选不到子组件内部的节点。 + */ + onSearchBarHeight: function onSearchBarHeight(h) { + this._searchBarH = h; + this.recomputeScrollHeight(); + }, + onCountryBarHeight: function onCountryBarHeight(h) { + this._countryBarH = h; + this.recomputeScrollHeight(); + }, + onActiveFiltersHeight: function onActiveFiltersHeight(h) { + this._activeFiltersH = h; + this.recomputeScrollHeight(); + }, + onSubCategoriesHeight: function onSubCategoriesHeight(h) { + this._subCategoriesH = h; + this.recomputeScrollHeight(); + }, + /** + * 根据 4 个子组件上报的高度,计算 scroll-view 可用的固定高度。 * —— 完全符合 uni-app / 微信小程序官方文档「scroll-y 需给固定 height」的要求。 */ - calcScrollHeight: function calcScrollHeight() { - var _this6 = this; - var query = uni.createSelectorQuery().in(this); - // 分别测量 4 个元素的 boundingClientRect - query.select('#searchBar').boundingClientRect(); - query.select('#countryBar').boundingClientRect(); - query.select('#activeFilters').boundingClientRect(); - query.select('#subCategories').boundingClientRect(); - query.exec(function (res) { - // res[0]=searchBar, res[1]=countryBar, res[2]=activeFilters, res[3]=subCategories - // 注意:v-if 为 false 时 res[i] 可能为 null - var searchBarH = res[0] ? res[0].height : 0; - var countryBarH = res[1] ? res[1].height : 0; - var activeFiltersH = res[2] ? res[2].height : 0; - var subCategoriesH = res[3] ? res[3].height : 0; - var totalUsed = searchBarH + countryBarH + activeFiltersH + subCategoriesH; - var h = _this6.windowHeight - totalUsed; - // 最小值保护:至少 200px,避免极端情况 - if (h < 200) h = 200; - if (h > _this6.windowHeight) h = _this6.windowHeight; - _this6.productScrollHeight = Math.round(h); - console.log('[calcScrollHeight] windowHeight=' + _this6.windowHeight + ', searchBar=' + searchBarH + ', countryBar=' + countryBarH + ', activeFilters=' + activeFiltersH + ', subCategories=' + subCategoriesH + ' → scrollHeight=' + _this6.productScrollHeight); - }); + recomputeScrollHeight: function recomputeScrollHeight() { + var totalUsed = this._searchBarH + this._countryBarH + this._activeFiltersH + this._subCategoriesH; + var h = this.windowHeight - totalUsed; + // 最小值保护:至少 200px,避免极端情况 + if (h < 200) h = 200; + if (h > this.windowHeight) h = this.windowHeight; + this.productScrollHeight = Math.round(h); + console.log('[recomputeScrollHeight] windowHeight=' + this.windowHeight + ', searchBar=' + this._searchBarH + ', countryBar=' + this._countryBarH + ', activeFilters=' + this._activeFiltersH + ', subCategories=' + this._subCategoriesH + ' → scrollHeight=' + this.productScrollHeight); }, selectCountry: function selectCountry(id) { - var _this7 = this; + var _this6 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() { var country, filters; return _regenerator.default.wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: - if (!(_this7.selectedCountry === id)) { + if (!(_this6.selectedCountry === id)) { _context5.next = 8; break; } - _this7.selectedCountry = ''; - _this7.activeFilters = _this7.activeFilters.filter(function (f) { + _this6.selectedCountry = ''; + _this6.activeFilters = _this6.activeFilters.filter(function (f) { return f.key !== 'country'; }); _context5.next = 5; - return _this7.loadCategoryData(''); + return _this6.loadCategoryData(''); case 5: _context5.next = 7; - return _this7.loadGoods(1); + return _this6.loadGoods(1); case 7: return _context5.abrupt("return"); case 8: // 选中新国家 - country = _this7.countries.find(function (c) { + country = _this6.countries.find(function (c) { return c.id === id; }); - filters = _this7.activeFilters.filter(function (f) { + filters = _this6.activeFilters.filter(function (f) { return f.key !== 'country'; }); if (country) { @@ -608,13 +629,13 @@ var _default = { label: country.name }); } - _this7.selectedCountry = id; - _this7.activeFilters = filters; + _this6.selectedCountry = id; + _this6.activeFilters = filters; _context5.next = 15; - return _this7.loadCategoryData(id); + return _this6.loadCategoryData(id); case 15: _context5.next = 17; - return _this7.loadGoods(1); + return _this6.loadGoods(1); case 17: case "end": return _context5.stop(); @@ -624,16 +645,16 @@ var _default = { }))(); }, selectCategory: function selectCategory(id) { - var _this8 = this; + var _this7 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() { return _regenerator.default.wrap(function _callee6$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: - _this8.activeCategory = id; - _this8.loadSubCategories(id); + _this7.activeCategory = id; + _this7.loadSubCategories(id); _context6.next = 4; - return _this8.loadGoods(1); + return _this7.loadGoods(1); case 4: case "end": return _context6.stop(); @@ -643,15 +664,15 @@ var _default = { }))(); }, selectSubCategory: function selectSubCategory(id) { - var _this9 = this; + var _this8 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() { return _regenerator.default.wrap(function _callee7$(_context7) { while (1) { switch (_context7.prev = _context7.next) { case 0: - _this9.activeSubCategory = id; + _this8.activeSubCategory = id; _context7.next = 3; - return _this9.loadGoods(1); + return _this8.loadGoods(1); case 3: case "end": return _context7.stop(); @@ -683,27 +704,27 @@ var _default = { this.filterGroups = groups; }, removeFilter: function removeFilter(key) { - var _this10 = this; + var _this9 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() { var filters, groupId, groups; return _regenerator.default.wrap(function _callee8$(_context8) { while (1) { switch (_context8.prev = _context8.next) { case 0: - filters = _this10.activeFilters.filter(function (f) { + filters = _this9.activeFilters.filter(function (f) { return f.key !== key; }); if (!(key === 'country')) { _context8.next = 9; break; } - _this10.selectedCountry = ''; - _this10.activeFilters = filters; + _this9.selectedCountry = ''; + _this9.activeFilters = filters; _context8.next = 6; - return _this10.loadCategoryData(''); + return _this9.loadCategoryData(''); case 6: _context8.next = 8; - return _this10.loadGoods(1); + return _this9.loadGoods(1); case 8: return _context8.abrupt("return"); case 9: @@ -712,7 +733,7 @@ var _default = { break; } groupId = key.replace('tag_', ''); - groups = _this10.filterGroups.map(function (g) { + groups = _this9.filterGroups.map(function (g) { if (String(g.id) === String(groupId)) { return Object.assign({}, g, { selected: [] @@ -720,14 +741,14 @@ var _default = { } return g; }); - _this10.activeFilters = filters; - _this10.filterGroups = groups; + _this9.activeFilters = filters; + _this9.filterGroups = groups; _context8.next = 16; - return _this10.loadGoods(1); + return _this9.loadGoods(1); case 16: return _context8.abrupt("return"); case 17: - _this10.activeFilters = filters; + _this9.activeFilters = filters; case 18: case "end": return _context8.stop(); @@ -737,33 +758,33 @@ var _default = { }))(); }, clearAllFilters: function clearAllFilters() { - var _this11 = this; + var _this10 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() { var hasCountry, groups; return _regenerator.default.wrap(function _callee9$(_context9) { while (1) { switch (_context9.prev = _context9.next) { case 0: - hasCountry = _this11.activeFilters.some(function (f) { + hasCountry = _this10.activeFilters.some(function (f) { return f.key === 'country'; }); - _this11.activeFilters = []; - if (!(hasCountry || _this11.selectedCountry)) { + _this10.activeFilters = []; + if (!(hasCountry || _this10.selectedCountry)) { _context9.next = 6; break; } - _this11.selectedCountry = ''; + _this10.selectedCountry = ''; _context9.next = 6; - return _this11.loadCategoryData(''); + return _this10.loadCategoryData(''); case 6: - groups = _this11.filterGroups.map(function (g) { + groups = _this10.filterGroups.map(function (g) { return Object.assign({}, g, { selected: [] }); }); - _this11.filterGroups = groups; + _this10.filterGroups = groups; _context9.next = 10; - return _this11.loadGoods(1); + return _this10.loadGoods(1); case 10: case "end": return _context9.stop(); @@ -781,7 +802,7 @@ var _default = { this.filterGroups = groups; }, confirmFilters: function confirmFilters() { - var _this12 = this; + var _this11 = this; return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() { var filters, countryFilter; return _regenerator.default.wrap(function _callee10$(_context10) { @@ -789,11 +810,11 @@ var _default = { switch (_context10.prev = _context10.next) { case 0: filters = []; - countryFilter = _this12.activeFilters.find(function (f) { + countryFilter = _this11.activeFilters.find(function (f) { return f.key === 'country'; }); if (countryFilter) filters.push(countryFilter); - _this12.filterGroups.forEach(function (group) { + _this11.filterGroups.forEach(function (group) { if (group.selected.length > 0) { var labels = group.tags.filter(function (t) { return group.selected.indexOf(t.id) > -1; @@ -808,10 +829,10 @@ var _default = { } } }); - _this12.activeFilters = filters; - _this12.showFilter = false; + _this11.activeFilters = filters; + _this11.showFilter = false; _context10.next = 8; - return _this12.loadGoods(1); + return _this11.loadGoods(1); case 8: case "end": return _context10.stop(); diff --git a/unpackage/dist/dev/mp-weixin/pages/products/products.wxml b/unpackage/dist/dev/mp-weixin/pages/products/products.wxml index d586c19..e5a88fd 100644 --- a/unpackage/dist/dev/mp-weixin/pages/products/products.wxml +++ b/unpackage/dist/dev/mp-weixin/pages/products/products.wxml @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file