From d54251e6e3c6b91b01ce7df49cbcc7fdb0754aad Mon Sep 17 00:00:00 2001 From: donqi Date: Mon, 9 May 2022 23:11:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=93=81=E7=B1=BB=E9=A1=B5=E9=9D=A2=EF=BC=8C?= =?UTF-8?q?=E4=BA=A7=E5=93=81=E7=AD=9B=E9=80=89=E6=90=9C=E7=B4=A2=E5=B1=95?= =?UTF-8?q?=E7=A4=BA=E9=A1=B5=E9=9D=A2=E5=BC=80=E5=8F=91=EF=BC=9B=E7=BD=91?= =?UTF-8?q?=E7=BB=9C=E5=BC=82=E6=AD=A5=E8=AF=B7=E6=B1=82=E6=8B=A6=E6=88=AA?= =?UTF-8?q?=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/multi-level-nav/vertical-nav.vue | 4 + main.js | 35 +++-- pages.json | 4 + pages/index/home.vue | 7 +- pages/product/filtered-products.vue | 145 ++++++++++++++++++++ pages/product/product-category.vue | 64 +++++++++ 6 files changed, 249 insertions(+), 10 deletions(-) create mode 100644 pages/product/filtered-products.vue create mode 100644 pages/product/product-category.vue diff --git a/components/multi-level-nav/vertical-nav.vue b/components/multi-level-nav/vertical-nav.vue index 86d7bfe..c1bded9 100644 --- a/components/multi-level-nav/vertical-nav.vue +++ b/components/multi-level-nav/vertical-nav.vue @@ -49,6 +49,10 @@ containerHeight: { type: String, default: '100vh' + }, + isClick2ShowProducts: { + type: Boolean, + default: false } }, data() { diff --git a/main.js b/main.js index f66a7a0..402353b 100644 --- a/main.js +++ b/main.js @@ -1,27 +1,44 @@ // #ifndef VUE3 import Vue from 'vue'; import App from './App'; -import CuCustom from 'colorui/components/cu-custom.vue'; +import CuCustom from 'colorui/components/cu-custom.vue'; import ConfirmModal from '@/components/modal/confirm-modal.vue'; -import Data from './common/js/data.js'; -import globalFun from './common/js/glogalFun.js'; +import Data from './common/js/data.js'; +import globalFun from './common/js/glogalFun.js'; import validate from './common/js/validate.js'; -Vue.component('cu-custom', CuCustom) +Vue.component('cu-custom', CuCustom) Vue.component('confirm-modal', ConfirmModal); const data = type => { //模拟异步请求数据 return new Promise(resolve => { - setTimeout(() => { - resolve(Data[type]); - }, 0) + resolve(Data[type]); }) } Vue.prototype.$api = { data } -Vue.prototype.$globalFun = globalFun; -Vue.prototype.$validate = validate; +Vue.prototype.$globalFun = globalFun; +Vue.prototype.$validate = validate; + +// 异步接口拦截 +uni.addInterceptor('request', { + invoke(args) { + // request 触发前拼接 url + args.url = 'http://127.0.0.1:80' + args.url; + console.log("停止触发"); + return false; + }, + success(args) { + console.log('interceptor-success', args); + }, + fail(err) { + console.log('interceptor-fail', err) + }, + complete(res) { + console.log('interceptor-complete', res) + } +}) Vue.config.productionTip = false diff --git a/pages.json b/pages.json index 9c5a2b4..dc0d097 100644 --- a/pages.json +++ b/pages.json @@ -16,6 +16,10 @@ "path": "product-pick" }, { "path": "shop-detail" + }, { + "path": "product-category" + }, { + "path": "filtered-products" }] }, { "root": "pages/my/", diff --git a/pages/index/home.vue b/pages/index/home.vue index 2cb0a29..682bff5 100644 --- a/pages/index/home.vue +++ b/pages/index/home.vue @@ -24,7 +24,7 @@ - + 分类 @@ -133,6 +133,11 @@ uni.navigateTo({ url: '../product/product-detail' }); + }, + showProductCategories() { + uni.navigateTo({ + url: '/pages/product/product-category' + }) } } } diff --git a/pages/product/filtered-products.vue b/pages/product/filtered-products.vue new file mode 100644 index 0000000..584055a --- /dev/null +++ b/pages/product/filtered-products.vue @@ -0,0 +1,145 @@ + + + + + diff --git a/pages/product/product-category.vue b/pages/product/product-category.vue new file mode 100644 index 0000000..6e18a32 --- /dev/null +++ b/pages/product/product-category.vue @@ -0,0 +1,64 @@ + + + + +