├── .browserslistrc ├── .editorconfig ├── .env.development ├── .env.production ├── .env.test ├── .eslintrc.js ├── .gitignore ├── README-zh_CN.md ├── README.md ├── babel.config.js ├── package.json ├── postcss.config.js ├── public ├── favicon.ico └── index.html ├── src ├── App.vue ├── assets │ ├── WechatIMG117.jpeg │ ├── icons │ │ ├── left-green-white.png │ │ ├── rown.png │ │ └── tabbar │ │ │ ├── cart.png │ │ │ ├── cart_active.png │ │ │ ├── classify.png │ │ │ ├── classify_active.png │ │ │ ├── home.png │ │ │ ├── home_active.png │ │ │ ├── mine.png │ │ │ └── mine_active.png │ ├── image │ │ ├── back-show.png │ │ ├── classifyNursing │ │ │ ├── 商品详情-1.png │ │ │ ├── 商品详情-2.png │ │ │ ├── 商品详情-3.png │ │ │ ├── 商品详情-4.png │ │ │ ├── 商品详情-首页图.png │ │ │ ├── 商品详情1-1.png │ │ │ ├── 商品详情1-2.png │ │ │ ├── 商品详情1-3.png │ │ │ ├── 商品详情1-4.png │ │ │ ├── 手表-1.png │ │ │ ├── 手表-2.png │ │ │ ├── 手表-3.png │ │ │ ├── 手表-4.png │ │ │ ├── 手表-5.png │ │ │ ├── 手表-6.png │ │ │ ├── 护理-1.png │ │ │ ├── 护理-10.png │ │ │ ├── 护理-11.png │ │ │ ├── 护理-12.png │ │ │ ├── 护理-2.png │ │ │ ├── 护理-3.png │ │ │ ├── 护理-4.png │ │ │ ├── 护理-5.png │ │ │ ├── 护理-6.png │ │ │ ├── 护理-7.png │ │ │ ├── 护理-9.png │ │ │ ├── 水杯0.png │ │ │ ├── 水杯1.png │ │ │ ├── 水杯2.png │ │ │ ├── 水杯3.png │ │ │ ├── 水杯4.png │ │ │ ├── 男鞋0.png │ │ │ ├── 男鞋1.png │ │ │ ├── 男鞋2.png │ │ │ ├── 男鞋3.png │ │ │ ├── 男鞋4.png │ │ │ ├── 箱包0.png │ │ │ ├── 箱包1.png │ │ │ ├── 箱包2.png │ │ │ ├── 箱包3.png │ │ │ ├── 箱包4.png │ │ │ ├── 美妆-1.png │ │ │ ├── 美妆-10.png │ │ │ ├── 美妆-11.png │ │ │ ├── 美妆-2.png │ │ │ ├── 美妆-3.png │ │ │ ├── 美妆-4.png │ │ │ ├── 美妆-5.png │ │ │ ├── 美妆-6.png │ │ │ ├── 美妆-7.png │ │ │ ├── 美妆-8.png │ │ │ ├── 美妆-9.png │ │ │ ├── 运动装备-1.png │ │ │ ├── 运动装备-10.png │ │ │ ├── 运动装备-11.png │ │ │ ├── 运动装备-12.png │ │ │ ├── 运动装备-2.png │ │ │ ├── 运动装备-3.png │ │ │ ├── 运动装备-4.png │ │ │ ├── 运动装备-5.png │ │ │ ├── 运动装备-6.png │ │ │ ├── 运动装备-7.png │ │ │ ├── 运动装备-9.png │ │ │ ├── 钟表-1.png │ │ │ ├── 钟表-10.png │ │ │ ├── 钟表-11.png │ │ │ ├── 钟表-2.png │ │ │ ├── 钟表-3.png │ │ │ ├── 钟表-4.png │ │ │ ├── 钟表-5.png │ │ │ ├── 钟表-6.png │ │ │ ├── 钟表-7.png │ │ │ ├── 钟表-8.png │ │ │ └── 钟表-9.png │ │ ├── home │ │ │ ├── banner5.jpg │ │ │ ├── banner6.jpg │ │ │ ├── banner7.jpg │ │ │ ├── banner8.jpg │ │ │ ├── demo1.png │ │ │ ├── demo10.png │ │ │ ├── demo11.png │ │ │ ├── demo12.png │ │ │ ├── demo13.png │ │ │ ├── demo2.png │ │ │ ├── demo3.png │ │ │ ├── demo4.png │ │ │ ├── demo5.png │ │ │ ├── demo6.png │ │ │ ├── demo7.png │ │ │ ├── demo8.png │ │ │ ├── demo9.png │ │ │ ├── huawei1.png │ │ │ ├── store-logo.png │ │ │ ├── store-logo2.png │ │ │ ├── store1.png │ │ │ ├── store2.png │ │ │ ├── store3.png │ │ │ ├── store4.png │ │ │ ├── store5.png │ │ │ ├── store6.png │ │ │ ├── test1.png │ │ │ ├── test10.png │ │ │ ├── test11.png │ │ │ ├── test2.png │ │ │ ├── test3.png │ │ │ ├── test4.png │ │ │ ├── test5.png │ │ │ ├── test6.png │ │ │ ├── test7.png │ │ │ ├── test8.png │ │ │ └── test9.png │ │ ├── left_icon.png │ │ ├── premiumRanking │ │ │ ├── demo0.png │ │ │ ├── demo1.png │ │ │ ├── demo2.png │ │ │ └── demo3.png │ │ ├── product │ │ │ ├── area-node-img.png │ │ │ ├── area-node.png │ │ │ ├── bule0.png │ │ │ ├── bule1.png │ │ │ ├── bule2.png │ │ │ ├── err0.png │ │ │ ├── err1.png │ │ │ ├── err2.png │ │ │ ├── gray-node-img.png │ │ │ ├── header-good.png │ │ │ ├── industry-node-img.png │ │ │ ├── industry-node.png │ │ │ ├── jd_logo.jpg │ │ │ ├── municipal-node-img.png │ │ │ ├── municipal-node.png │ │ │ ├── rectangle-left.png │ │ │ ├── rectangle-right.png │ │ │ ├── share-apply.png │ │ │ ├── share-node-img.png │ │ │ ├── sharing-node.png │ │ │ ├── spike0.png │ │ │ ├── spike1.png │ │ │ ├── spike2.png │ │ │ ├── state-node-img.png │ │ │ ├── state-node.png │ │ │ ├── store-header.png │ │ │ ├── store-headerM.png │ │ │ ├── store-new.png │ │ │ ├── super-node-img.png │ │ │ ├── super-node.png │ │ │ ├── watch0.png │ │ │ ├── watch1.png │ │ │ ├── watch2.png │ │ │ └── 矩形 234.png │ │ ├── setting │ │ │ └── logo.png │ │ ├── shopCart │ │ │ ├── 购物车-1.png │ │ │ ├── 购物车-2.png │ │ │ ├── 购物车-3.png │ │ │ ├── 购物车-4.png │ │ │ ├── 购物车-5.png │ │ │ ├── 购物车-6.png │ │ │ └── 购物车-7.png │ │ ├── top-logo.png │ │ ├── wallet-right-white.png │ │ ├── wallet-two-big.png │ │ └── wallet-two-img.png │ └── logo.png ├── components │ ├── DropList │ │ ├── index.js │ │ └── index.vue │ ├── ProgressBar │ │ └── index.vue │ ├── SvgIcon │ │ └── index.vue │ ├── index.js │ ├── picker │ │ └── index.vue │ ├── popup │ │ └── index.vue │ ├── scroll │ │ └── ListScroll.vue │ └── tabbar │ │ └── index.vue ├── icons │ ├── index.js │ └── svgs │ │ ├── add.svg │ │ ├── address-company.svg │ │ ├── address-home.svg │ │ ├── address-school.svg │ │ ├── advertisement-pool.svg │ │ ├── aircraft.svg │ │ ├── alipay-icon.svg │ │ ├── all-orders.svg │ │ ├── anchor-point.svg │ │ ├── arrow-down.svg │ │ ├── arrow.svg │ │ ├── be-delivered.svg │ │ ├── bell-icon-blak.svg │ │ ├── bell-icon.svg │ │ ├── businessmen-stationed.svg │ │ ├── calendar-wallet-order.svg │ │ ├── chain-cat-boutique.svg │ │ ├── chain-cat-member.svg │ │ ├── close-popup.svg │ │ ├── cm-area.svg │ │ ├── coin-pay.svg │ │ ├── collar-cm.svg │ │ ├── consumption-pool.svg │ │ ├── copy-link.svg │ │ ├── correct.svg │ │ ├── coupon-svg.svg │ │ ├── courier.svg │ │ ├── customer-service.svg │ │ ├── dialog-close.svg │ │ ├── feedback-svg.svg │ │ ├── gray-btn.svg │ │ ├── green-btn.svg │ │ ├── heart-full.svg │ │ ├── heart-null-black.svg │ │ ├── heart-null.svg │ │ ├── help-center.svg │ │ ├── hot.svg │ │ ├── icon-alertwarn.svg │ │ ├── icon-delete.svg │ │ ├── left-btn.svg │ │ ├── logistics-logo.svg │ │ ├── message-center.svg │ │ ├── message-round.svg │ │ ├── mini-right-btn.svg │ │ ├── my-assets.svg │ │ ├── my-complaint.svg │ │ ├── my-reminder.svg │ │ ├── node-application.svg │ │ ├── node-pool.svg │ │ ├── notice-wallet.svg │ │ ├── order-info.svg │ │ ├── pay-success.svg │ │ ├── pending-pay.svg │ │ ├── pending-receipt.svg │ │ ├── point.svg │ │ ├── pool-count.svg │ │ ├── processbar.svg │ │ ├── product-help.svg │ │ ├── qq-icon.svg │ │ ├── qq-space.svg │ │ ├── question-mark.svg │ │ ├── red-flag.svg │ │ ├── right-arrow.svg │ │ ├── search.svg │ │ ├── setting.svg │ │ ├── share-btn-black.svg │ │ ├── share-btn.svg │ │ ├── sharing-links.svg │ │ ├── shipped.svg │ │ ├── shipping-address.svg │ │ ├── shopping-cart.svg │ │ ├── sigh.svg │ │ ├── therr-point.svg │ │ ├── transparent-btn.svg │ │ ├── wallet-balance-icon.svg │ │ ├── wallet-balance.svg │ │ ├── wallet-consumption-icon.svg │ │ ├── wallet-consumption.svg │ │ ├── wallet-four-big.svg │ │ ├── wallet-four.svg │ │ ├── wallet-one-big.svg │ │ ├── wallet-one.svg │ │ ├── wallet-order-message.svg │ │ ├── wallet-right-arrow.svg │ │ ├── wallet-right-gray-arrow.svg │ │ ├── wallet-three-big.svg │ │ ├── wallet-three.svg │ │ ├── wallet-two-big.svg │ │ ├── wallet-two.svg │ │ ├── we-blog.svg │ │ ├── we-char.svg │ │ ├── we-chat-friends.svg │ │ └── white-btn.svg ├── main.js ├── mock │ ├── area.js │ └── mock.js ├── plugins │ └── axios.js ├── router │ ├── index.js │ └── modules │ │ ├── aboutAs.js │ │ ├── addAddress.js │ │ ├── advertisementPool.js │ │ ├── appeal.js │ │ ├── appealDetail.js │ │ ├── appealRecord.js │ │ ├── areaNode.js │ │ ├── balanceWallet.js │ │ ├── brandSpike.js │ │ ├── cancelOrder.js │ │ ├── chainCatSpike.js │ │ ├── changePassword.js │ │ ├── cityNode.js │ │ ├── consumerWallet.js │ │ ├── consumptionPool.js │ │ ├── countryRegion.js │ │ ├── emailRegister.js │ │ ├── emailRegisterTwo.js │ │ ├── feedback.js │ │ ├── forgetPassword.js │ │ ├── foundGoodGoods.js │ │ ├── helpCenter.js │ │ ├── industryNode.js │ │ ├── login.js │ │ ├── loveShop.js │ │ ├── messageCenter.js │ │ ├── myFocus.js │ │ ├── myWallet.js │ │ ├── newProductLaunch.js │ │ ├── nodeApplication.js │ │ ├── nodePool.js │ │ ├── order.js │ │ ├── orderDetail.js │ │ ├── pendingReceipt.js │ │ ├── personInfo.js │ │ ├── phoneNumberSetting.js │ │ ├── phoneRegister.js │ │ ├── phoneRegisterTwo.js │ │ ├── premiumRanking.js │ │ ├── product.js │ │ ├── recommend.js │ │ ├── search.js │ │ ├── setting.js │ │ ├── settingMail.js │ │ ├── shippingAddress.js │ │ ├── specialSpike.js │ │ ├── stateNode.js │ │ ├── storeDetail.js │ │ ├── superNode.js │ │ ├── tabbar.js │ │ ├── toBeDelivered.js │ │ ├── transactionDetails.js │ │ └── viewLogistics.js ├── store │ ├── index.js │ └── modules │ │ ├── cart.js │ │ └── search.js ├── styles │ ├── base.scss │ ├── index.scss │ └── mixin.scss ├── utils │ ├── eventBus.js │ └── util.js └── views │ ├── brandSpike │ └── index.vue │ ├── chainCatSpike │ └── index.vue │ ├── classify │ ├── index.scss │ ├── index.vue │ └── recommend.vue │ ├── error │ ├── 404.vue │ └── NoPermission.vue │ ├── foundGoodGoods │ └── index.vue │ ├── home │ ├── index.scss │ └── index.vue │ ├── index.vue │ ├── login │ └── index.vue │ ├── loveShop │ └── index.vue │ ├── mine │ ├── aboutAs.vue │ ├── addAddress.vue │ ├── changePassword.vue │ ├── countryRegion.vue │ ├── feedback.vue │ ├── forgetPassword.vue │ ├── helpCenter.vue │ ├── index.vue │ ├── messageCenter.vue │ ├── personInfo.vue │ ├── phoneNumberSetting.vue │ ├── setInfo.vue │ ├── setting.vue │ ├── settingMail.vue │ └── shippingAddress.vue │ ├── myFocus │ └── index.vue │ ├── newProductLaunch │ └── index.vue │ ├── node │ ├── areaNode.vue │ ├── cityNode.vue │ ├── industryNode.vue │ ├── nodeApplication.vue │ ├── stateNode.vue │ └── superNode.vue │ ├── order │ ├── appeal.vue │ ├── appealDetail.vue │ ├── appealRecord.vue │ ├── cancelOrder.vue │ ├── index.vue │ ├── orderDetail.vue │ ├── pendingReceipt.vue │ ├── toBeDelivered.vue │ ├── transactionDetails.vue │ └── viewLogistics.vue │ ├── pool │ ├── advertisementPool.vue │ ├── consumptionPool.vue │ └── nodePool.vue │ ├── premiumRanking │ └── index.vue │ ├── product │ └── index.vue │ ├── register │ ├── emailRegister.vue │ ├── emailRegisterTwo.vue │ ├── phoneRegister.vue │ └── phoneRegisterTwo.vue │ ├── search │ └── index.vue │ ├── shopCart │ └── index.vue │ ├── specialSpike │ └── index.vue │ ├── storeDetail │ └── index.vue │ └── wallet │ ├── balanceWallet.vue │ ├── consumerWallet.vue │ └── myWallet.vue ├── vue.config.js └── yarn.lock /.browserslistrc: -------------------------------------------------------------------------------- 1 | > 1% 2 | last 2 versions 3 | not dead 4 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | [*.{js,jsx,ts,tsx,vue,json}] 2 | indent_style = space 3 | indent_size = 2 4 | trim_trailing_whitespace = true 5 | insert_final_newline = true 6 | -------------------------------------------------------------------------------- /.env.development: -------------------------------------------------------------------------------- 1 | NODE_ENV = "development" 2 | 3 | VUE_APP_BASE_URL = "http://192.168.2.13:9070" -------------------------------------------------------------------------------- /.env.production: -------------------------------------------------------------------------------- 1 | NODE_ENV = "production" 2 | 3 | VUE_APP_BASE_URL = "http://api.cmall.world" -------------------------------------------------------------------------------- /.env.test: -------------------------------------------------------------------------------- 1 | NODE_ENV = "test" 2 | VUE_APP_BASE_URL = "https://easy-mock.com/mock/5c4c50b9888ef15de01bec2c/api" -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | node: true 5 | }, 6 | extends: [ 7 | 'plugin:vue/vue3-essential', 8 | ], 9 | // '@vue/standard' 10 | parserOptions: { 11 | parser: 'babel-eslint' 12 | }, 13 | rules: { 14 | 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', 15 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off' 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "refactor-with-vue3", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "eslint --fix --ext .js,.vue src" 9 | }, 10 | "dependencies": { 11 | "axios": "^1.7.4", 12 | "better-scroll": "^2.0.7", 13 | "core-js": "^3.6.5", 14 | "lib-flexible": "^0.3.2", 15 | "mitt": "^2.1.0", 16 | "vant": "^3.0.0", 17 | "vue": "^3.0.0", 18 | "vue-router": "^4.0.0-0", 19 | "vuex": "^4.0.0-0" 20 | }, 21 | "devDependencies": { 22 | "@vue/cli-plugin-babel": "~4.5.0", 23 | "@vue/cli-plugin-eslint": "~4.5.0", 24 | "@vue/cli-plugin-router": "~4.5.0", 25 | "@vue/cli-plugin-vuex": "~4.5.0", 26 | "@vue/cli-service": "~4.5.0", 27 | "@vue/compiler-sfc": "^3.0.0", 28 | "@vue/eslint-config-standard": "^5.1.2", 29 | "babel-eslint": "^10.1.0", 30 | "eslint": "^6.7.2", 31 | "eslint-plugin-import": "^2.20.2", 32 | "eslint-plugin-node": "^11.1.0", 33 | "eslint-plugin-promise": "^4.2.1", 34 | "eslint-plugin-standard": "^4.0.0", 35 | "eslint-plugin-vue": "^7.0.0-0", 36 | "mockjs": "^1.1.0", 37 | "postcss-pxtorem": "^5.1.1", 38 | "sass": "^1.49.9", 39 | "sass-loader": "^8.0.2", 40 | "svg-sprite-loader": "^5.2.1", 41 | "vue-click-outside": "^1.1.0" 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2020-12-27 20:36:26 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2020-12-27 20:37:37 8 | * @FilePath: /refactor-with-vue3/postcss.config.js 9 | */ 10 | module.exports = { 11 | plugins: { 12 | 'postcss-pxtorem': { 13 | rootValue: 37.5, 14 | propList: ['*'] 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/public/favicon.ico -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 10 | 15 | 16 | 21 | 33 | -------------------------------------------------------------------------------- /src/assets/WechatIMG117.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/WechatIMG117.jpeg -------------------------------------------------------------------------------- /src/assets/icons/left-green-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/left-green-white.png -------------------------------------------------------------------------------- /src/assets/icons/rown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/rown.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/cart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/cart.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/cart_active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/cart_active.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/classify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/classify.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/classify_active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/classify_active.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/home.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/home_active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/home_active.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/mine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/mine.png -------------------------------------------------------------------------------- /src/assets/icons/tabbar/mine_active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/icons/tabbar/mine_active.png -------------------------------------------------------------------------------- /src/assets/image/back-show.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/back-show.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情-首页图.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情-首页图.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情1-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情1-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情1-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情1-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情1-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/商品详情1-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/商品详情1-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-5.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/手表-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/手表-6.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-10.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-11.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-12.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-5.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-6.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-7.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/护理-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/护理-9.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/水杯0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/水杯0.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/水杯1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/水杯1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/水杯2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/水杯2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/水杯3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/水杯3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/水杯4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/水杯4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/男鞋0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/男鞋0.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/男鞋1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/男鞋1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/男鞋2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/男鞋2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/男鞋3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/男鞋3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/男鞋4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/男鞋4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/箱包0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/箱包0.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/箱包1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/箱包1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/箱包2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/箱包2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/箱包3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/箱包3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/箱包4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/箱包4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-10.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-11.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-5.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-6.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-7.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-8.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/美妆-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/美妆-9.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-10.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-11.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-12.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-5.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-6.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-7.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/运动装备-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/运动装备-9.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-1.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-10.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-11.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-2.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-3.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-4.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-5.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-6.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-7.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-8.png -------------------------------------------------------------------------------- /src/assets/image/classifyNursing/钟表-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/classifyNursing/钟表-9.png -------------------------------------------------------------------------------- /src/assets/image/home/banner5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/banner5.jpg -------------------------------------------------------------------------------- /src/assets/image/home/banner6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/banner6.jpg -------------------------------------------------------------------------------- /src/assets/image/home/banner7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/banner7.jpg -------------------------------------------------------------------------------- /src/assets/image/home/banner8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/banner8.jpg -------------------------------------------------------------------------------- /src/assets/image/home/demo1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo1.png -------------------------------------------------------------------------------- /src/assets/image/home/demo10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo10.png -------------------------------------------------------------------------------- /src/assets/image/home/demo11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo11.png -------------------------------------------------------------------------------- /src/assets/image/home/demo12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo12.png -------------------------------------------------------------------------------- /src/assets/image/home/demo13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo13.png -------------------------------------------------------------------------------- /src/assets/image/home/demo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo2.png -------------------------------------------------------------------------------- /src/assets/image/home/demo3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo3.png -------------------------------------------------------------------------------- /src/assets/image/home/demo4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo4.png -------------------------------------------------------------------------------- /src/assets/image/home/demo5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo5.png -------------------------------------------------------------------------------- /src/assets/image/home/demo6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo6.png -------------------------------------------------------------------------------- /src/assets/image/home/demo7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo7.png -------------------------------------------------------------------------------- /src/assets/image/home/demo8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo8.png -------------------------------------------------------------------------------- /src/assets/image/home/demo9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/demo9.png -------------------------------------------------------------------------------- /src/assets/image/home/huawei1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/huawei1.png -------------------------------------------------------------------------------- /src/assets/image/home/store-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store-logo.png -------------------------------------------------------------------------------- /src/assets/image/home/store-logo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store-logo2.png -------------------------------------------------------------------------------- /src/assets/image/home/store1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store1.png -------------------------------------------------------------------------------- /src/assets/image/home/store2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store2.png -------------------------------------------------------------------------------- /src/assets/image/home/store3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store3.png -------------------------------------------------------------------------------- /src/assets/image/home/store4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store4.png -------------------------------------------------------------------------------- /src/assets/image/home/store5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store5.png -------------------------------------------------------------------------------- /src/assets/image/home/store6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/store6.png -------------------------------------------------------------------------------- /src/assets/image/home/test1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test1.png -------------------------------------------------------------------------------- /src/assets/image/home/test10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test10.png -------------------------------------------------------------------------------- /src/assets/image/home/test11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test11.png -------------------------------------------------------------------------------- /src/assets/image/home/test2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test2.png -------------------------------------------------------------------------------- /src/assets/image/home/test3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test3.png -------------------------------------------------------------------------------- /src/assets/image/home/test4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test4.png -------------------------------------------------------------------------------- /src/assets/image/home/test5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test5.png -------------------------------------------------------------------------------- /src/assets/image/home/test6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test6.png -------------------------------------------------------------------------------- /src/assets/image/home/test7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test7.png -------------------------------------------------------------------------------- /src/assets/image/home/test8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test8.png -------------------------------------------------------------------------------- /src/assets/image/home/test9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/home/test9.png -------------------------------------------------------------------------------- /src/assets/image/left_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/left_icon.png -------------------------------------------------------------------------------- /src/assets/image/premiumRanking/demo0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/premiumRanking/demo0.png -------------------------------------------------------------------------------- /src/assets/image/premiumRanking/demo1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/premiumRanking/demo1.png -------------------------------------------------------------------------------- /src/assets/image/premiumRanking/demo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/premiumRanking/demo2.png -------------------------------------------------------------------------------- /src/assets/image/premiumRanking/demo3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/premiumRanking/demo3.png -------------------------------------------------------------------------------- /src/assets/image/product/area-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/area-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/area-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/area-node.png -------------------------------------------------------------------------------- /src/assets/image/product/bule0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/bule0.png -------------------------------------------------------------------------------- /src/assets/image/product/bule1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/bule1.png -------------------------------------------------------------------------------- /src/assets/image/product/bule2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/bule2.png -------------------------------------------------------------------------------- /src/assets/image/product/err0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/err0.png -------------------------------------------------------------------------------- /src/assets/image/product/err1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/err1.png -------------------------------------------------------------------------------- /src/assets/image/product/err2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/err2.png -------------------------------------------------------------------------------- /src/assets/image/product/gray-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/gray-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/header-good.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/header-good.png -------------------------------------------------------------------------------- /src/assets/image/product/industry-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/industry-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/industry-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/industry-node.png -------------------------------------------------------------------------------- /src/assets/image/product/jd_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/jd_logo.jpg -------------------------------------------------------------------------------- /src/assets/image/product/municipal-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/municipal-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/municipal-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/municipal-node.png -------------------------------------------------------------------------------- /src/assets/image/product/rectangle-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/rectangle-left.png -------------------------------------------------------------------------------- /src/assets/image/product/rectangle-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/rectangle-right.png -------------------------------------------------------------------------------- /src/assets/image/product/share-apply.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/share-apply.png -------------------------------------------------------------------------------- /src/assets/image/product/share-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/share-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/sharing-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/sharing-node.png -------------------------------------------------------------------------------- /src/assets/image/product/spike0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/spike0.png -------------------------------------------------------------------------------- /src/assets/image/product/spike1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/spike1.png -------------------------------------------------------------------------------- /src/assets/image/product/spike2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/spike2.png -------------------------------------------------------------------------------- /src/assets/image/product/state-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/state-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/state-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/state-node.png -------------------------------------------------------------------------------- /src/assets/image/product/store-header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/store-header.png -------------------------------------------------------------------------------- /src/assets/image/product/store-headerM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/store-headerM.png -------------------------------------------------------------------------------- /src/assets/image/product/store-new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/store-new.png -------------------------------------------------------------------------------- /src/assets/image/product/super-node-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/super-node-img.png -------------------------------------------------------------------------------- /src/assets/image/product/super-node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/super-node.png -------------------------------------------------------------------------------- /src/assets/image/product/watch0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/watch0.png -------------------------------------------------------------------------------- /src/assets/image/product/watch1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/watch1.png -------------------------------------------------------------------------------- /src/assets/image/product/watch2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/watch2.png -------------------------------------------------------------------------------- /src/assets/image/product/矩形 234.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/product/矩形 234.png -------------------------------------------------------------------------------- /src/assets/image/setting/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/setting/logo.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-1.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-2.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-3.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-4.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-5.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-6.png -------------------------------------------------------------------------------- /src/assets/image/shopCart/购物车-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/shopCart/购物车-7.png -------------------------------------------------------------------------------- /src/assets/image/top-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/top-logo.png -------------------------------------------------------------------------------- /src/assets/image/wallet-right-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/wallet-right-white.png -------------------------------------------------------------------------------- /src/assets/image/wallet-two-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/wallet-two-big.png -------------------------------------------------------------------------------- /src/assets/image/wallet-two-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/image/wallet-two-img.png -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/geekskai/vue3-jd-h5/d545a06ad3c4912f24324dbaae0f8ca42d24d94c/src/assets/logo.png -------------------------------------------------------------------------------- /src/components/DropList/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import './index.css' 3 | 4 | export default Vue.component('DropList', { 5 | data() { 6 | return { 7 | top: (this.config.position && this.config.position.top) || null, 8 | right: (this.config.position && this.config.position.right) || null, 9 | bottom: (this.config.position && this.config.position.bottom) || null, 10 | left: (this.config.position && this.config.position.left) || null, 11 | width: this.config.width || null, 12 | list: this.config.list || [], 13 | isShow: this.config.isShow || false 14 | } 15 | }, 16 | props: ['config'], 17 | methods: { 18 | show() { 19 | this.isShow = true 20 | }, 21 | hidden() { 22 | this.isShow = false 23 | }, 24 | Action(callback) { 25 | callback() 26 | this.hidden() 27 | } 28 | }, 29 | template: ` 30 |
31 |
32 |
33 |
34 |
35 |
36 | ` 37 | }) -------------------------------------------------------------------------------- /src/components/DropList/index.vue: -------------------------------------------------------------------------------- 1 | 32 | 33 | 34 | 68 | 69 | 110 | -------------------------------------------------------------------------------- /src/components/ProgressBar/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 20 | 21 | 33 | 34 | 66 | -------------------------------------------------------------------------------- /src/components/SvgIcon/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 15 | 16 | 48 | 49 | 58 | -------------------------------------------------------------------------------- /src/components/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 13:57:27 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 13:27:58 8 | * @FilePath: /refactor-with-vue3/src/components/index.js 9 | */ 10 | 11 | function capitalizeFirstLetter(str) { 12 | return str.charAt(0).toUpperCase() + str.slice(1) 13 | } 14 | 15 | function validateFileName(str) { 16 | return /^\S+\.vue$/.test(str) && 17 | str.replace(/^\S+\/(\w+)\.vue$/, (rs, $1) => capitalizeFirstLetter($1)) 18 | } 19 | 20 | const requireComponent = require.context('.', true, /\.vue$/) 21 | 22 | export default { 23 | install(app) { 24 | // 找到组件文件夹下以.vue命名的文件,如果文件名为index,那么取组件中的name作为注册的组件名 25 | requireComponent.keys().forEach(filePath => { 26 | const componentConfig = requireComponent(filePath) 27 | const fileName = validateFileName(filePath) 28 | const componentName = fileName.toLowerCase() === 'index' ? 29 | capitalizeFirstLetter(componentConfig.default.name) : 30 | fileName 31 | app.component(componentName, componentConfig.default || componentConfig) 32 | }) 33 | } 34 | } -------------------------------------------------------------------------------- /src/components/popup/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 26 | 27 | 50 | 51 | 106 | -------------------------------------------------------------------------------- /src/components/tabbar/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 40 | 41 | 75 | -------------------------------------------------------------------------------- /src/icons/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-02 13:21:37 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 13:26:38 8 | * @FilePath: /refactor-with-vue3/src/icons/index.js 9 | */ 10 | import SvgIcon from '@/components/SvgIcon' 11 | 12 | const requireAll = requireContext => requireContext.keys().map(requireContext) 13 | 14 | export default { 15 | install(app) { 16 | app.component('svg-icon', SvgIcon); 17 | const req = require.context('./svgs/', false, /\.svg$/) 18 | requireAll(req) 19 | } 20 | } -------------------------------------------------------------------------------- /src/icons/svgs/add.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/icons/svgs/address-company.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/address-home.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/alipay-icon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/all-orders.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 分组 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/icons/svgs/anchor-point.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 3 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/icons/svgs/arrow-down.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/arrow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/be-delivered.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 17 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/icons/svgs/bell-icon-blak.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/icons/svgs/bell-icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/icons/svgs/chain-cat-boutique.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/icons/svgs/chain-cat-member.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/icons/svgs/close-popup.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/cm-area.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/icons/svgs/consumption-pool.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 3 Copy 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /src/icons/svgs/correct.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/coupon-svg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /src/icons/svgs/customer-service.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/icons/svgs/dialog-close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 分组 9 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/icons/svgs/feedback-svg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Rectangle Copy 10 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/icons/svgs/gray-btn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/icons/svgs/green-btn.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/heart-full.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 13 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/heart-null-black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 7 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/heart-null.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 7 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/help-center.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 4 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/icons/svgs/hot.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/icon-alertwarn.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/icon-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/left-btn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/icons/svgs/message-center.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 3 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/icons/svgs/message-round.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 3 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /src/icons/svgs/mini-right-btn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/icons/svgs/my-assets.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 我的 copy 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/icons/svgs/my-complaint.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /src/icons/svgs/my-reminder.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 提醒 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/node-application.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 copy 8 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/icons/svgs/node-pool.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 3 Copy 6 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/icons/svgs/notice-wallet.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/order-info.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 订单信息 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/icons/svgs/pay-success.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/pending-pay.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 11 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/icons/svgs/point.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgs/processbar.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/icons/svgs/product-help.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/icons/svgs/question-mark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/red-flag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/right-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/icons/svgs/search.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/icons/svgs/share-btn-black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 分享按钮 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/icons/svgs/share-btn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/shipping-address.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 我的 copy 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/icons/svgs/sigh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 取消订单 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/icons/svgs/therr-point.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 8 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/icons/svgs/transparent-btn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-one-big.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Path Copy 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-one.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 3 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-order-message.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 复制 (1) 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-right-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Combined Shape 2 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-right-gray-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Combined Shape Copy 4 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/icons/svgs/wallet-two.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 3 Copy 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/icons/svgs/white-btn.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2020-12-27 20:10:38 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 13:39:04 8 | * @FilePath: /refactor-with-vue3/src/main.js 9 | */ 10 | import { createApp } from 'vue' 11 | import Vant from 'vant' 12 | import 'lib-flexible/flexible' 13 | import App from './App.vue' 14 | import router from './router' 15 | import store from './store' 16 | import axios from "@/plugins/axios"; 17 | import icons from '@/icons' // icon 18 | import components from '@/components' // icon 19 | import 'vant/lib/index.css' // 全局引入样式 20 | import './mock/mock' 21 | import eventBus from './utils/eventBus' 22 | import { registerPlugins } from './utils/util' 23 | 24 | const plugins = [Vant, store, router, axios, icons, components, eventBus] 25 | const app = createApp(App); 26 | app.use(registerPlugins(plugins)) 27 | app.mount("#app") 28 | -------------------------------------------------------------------------------- /src/router/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2020-12-27 20:10:38 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-03 15:53:33 8 | * @FilePath: /vue-jd-h5/src/router/index.js 9 | */ 10 | import { createRouter, createWebHistory } from 'vue-router' 11 | 12 | const indexRouter = { 13 | path: '/', 14 | component: () => import('@/views/index'), 15 | redirect: '/index', 16 | children: [] 17 | } 18 | 19 | const routes = [ 20 | indexRouter, 21 | { 22 | path: '/nopermission', 23 | name: 'nopermission', 24 | meta: { 25 | index: 1 26 | }, 27 | component: () => import('@/views/error/NoPermission') 28 | }, 29 | { 30 | path: '/*', 31 | name: '404', 32 | meta: { 33 | index: 1 34 | }, 35 | component: () => import('@/views/error/404') 36 | }, 37 | ] 38 | 39 | const routerContext = require.context('./modules', true, /\.js$/) 40 | routerContext.keys().forEach(route => { 41 | const routerModule = routerContext(route) 42 | indexRouter.children = [...indexRouter.children, ...(routerModule.default || routerModule)] 43 | }) 44 | 45 | export default createRouter({ 46 | history: createWebHistory(process.env.BASE_URL), 47 | routes 48 | }) 49 | -------------------------------------------------------------------------------- /src/router/modules/aboutAs.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:28:56 8 | * @FilePath: /refactor-with-vue3/src/router/modules/aboutAs.js 9 | */ 10 | export default [ 11 | { 12 | path: '/setting/aboutAs', 13 | name: 'aboutAs', 14 | meta: { 15 | index: 13 16 | }, 17 | component: () => import('@/views/mine/aboutAs.vue') 18 | } 19 | ] -------------------------------------------------------------------------------- /src/router/modules/addAddress.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:28:44 8 | * @FilePath: /refactor-with-vue3/src/router/modules/addAddress.js 9 | */ 10 | export default [ 11 | { 12 | path: '/mine/addAddress', 13 | name: 'addAddress', 14 | meta: { 15 | index: 13 16 | }, 17 | component: () => import('@/views/mine/addAddress.vue') 18 | } 19 | ] -------------------------------------------------------------------------------- /src/router/modules/advertisementPool.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:29:11 8 | * @FilePath: /refactor-with-vue3/src/router/modules/advertisementPool.js 9 | */ 10 | export default [{ 11 | path: '/pool/advertisementPool', 12 | name: 'advertisementPool', 13 | meta: { 14 | index: 15 15 | }, 16 | component: () => import('@/views/pool/advertisementPool.vue') 17 | }] 18 | -------------------------------------------------------------------------------- /src/router/modules/appeal.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/order/appeal', 4 | name: 'appeal', 5 | meta: { 6 | index: 3 7 | }, 8 | component: () => import('@/views/order/appeal.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/appealDetail.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:29:35 8 | * @FilePath: /refactor-with-vue3/src/router/modules/appealDetail.js 9 | */ 10 | export default [{ 11 | path: '/order/appealDetail', 12 | name: 'appealDetail', 13 | meta: { 14 | index: 13 15 | }, 16 | component: () => import('@/views/order/appealDetail.vue') 17 | }] 18 | -------------------------------------------------------------------------------- /src/router/modules/appealRecord.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:29:50 8 | * @FilePath: /refactor-with-vue3/src/router/modules/appealRecord.js 9 | */ 10 | export default [ 11 | { 12 | path: '/order/appealRecord', 13 | name: 'appealRecord', 14 | meta: { 15 | index: 12 16 | }, 17 | component: () => import('@/views/order/appealRecord.vue') 18 | } 19 | ] 20 | -------------------------------------------------------------------------------- /src/router/modules/areaNode.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:30:21 8 | * @FilePath: /refactor-with-vue3/src/router/modules/areaNode.js 9 | */ 10 | export default [{ 11 | path: '/node/areaNode', 12 | name: 'areaNode', 13 | meta: { 14 | index: 15 15 | }, 16 | component: () => import('@/views/node/areaNode.vue') 17 | }] 18 | -------------------------------------------------------------------------------- /src/router/modules/balanceWallet.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 14:30:29 8 | * @FilePath: /refactor-with-vue3/src/router/modules/balanceWallet.js 9 | */ 10 | export default [{ 11 | path: '/wallet/balanceWallet', 12 | name: 'balanceWallet', 13 | meta: { 14 | index: 15 15 | }, 16 | component: () => import('@/views/wallet/balanceWallet.vue') 17 | }] 18 | -------------------------------------------------------------------------------- /src/router/modules/brandSpike.js: -------------------------------------------------------------------------------- 1 | // 发现好货 2 | export default [{ 3 | path: '/brandSpike', 4 | name: 'brandSpike', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/brandSpike/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/cancelOrder.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/order/cancelOrder', 3 | name: 'cancelOrder', 4 | meta: { 5 | index: 11 6 | }, 7 | component: () => import('@/views/order/cancelOrder.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/chainCatSpike.js: -------------------------------------------------------------------------------- 1 | // 链猫秒杀 2 | export default [{ 3 | path: '/chainCatSpike', 4 | name: 'chainCatSpike', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/chainCatSpike/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/changePassword.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/changePassword', 3 | name: 'changePassword', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/changePassword.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/cityNode.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/node/cityNode', 3 | name: 'cityNode', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/node/cityNode.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/consumerWallet.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/wallet/consumerWallet', 3 | name: 'consumerWallet', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/wallet/consumerWallet.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/consumptionPool.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/pool/consumptionPool', 3 | name: 'consumptionPool', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/pool/consumptionPool.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/countryRegion.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/countryRegion', 3 | name: 'countryRegion', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/mine/countryRegion.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/emailRegister.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/register/emailRegister', 4 | name: 'emailRegister', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/register/emailRegister') 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/router/modules/emailRegisterTwo.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/register/emailRegisterTwo', 4 | name: 'emailRegisterTwo', 5 | meta: { 6 | index: 3 7 | }, 8 | component: () => import('@/views/register/emailRegisterTwo') 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/router/modules/feedback.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/feedback', 3 | name: 'feedback', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/mine/feedback.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/forgetPassword.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/forgetPassword', 3 | name: 'forgetPassword', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/forgetPassword.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/foundGoodGoods.js: -------------------------------------------------------------------------------- 1 | // 发现好货 2 | export default [{ 3 | path: '/foundGoodGoods', 4 | name: 'foundGoodGoods', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/foundGoodGoods/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/helpCenter.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/helpCenter', 3 | name: 'helpCenter', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/helpCenter.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/industryNode.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/node/industryNode', 3 | name: 'industryNode', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/node/industryNode.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/login.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/login', 4 | name: 'login', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/login/index') 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/router/modules/loveShop.js: -------------------------------------------------------------------------------- 1 | 2 | // 爱逛好店 3 | export default [{ 4 | path: '/loveShop', 5 | name: 'loveShop', 6 | meta: { 7 | index: 2 8 | }, 9 | component: () => import('@/views/loveShop/index') 10 | }] 11 | -------------------------------------------------------------------------------- /src/router/modules/messageCenter.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/messageCenter', 3 | name: 'messageCenter', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/messageCenter.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/myFocus.js: -------------------------------------------------------------------------------- 1 | // 发现好货 2 | export default [{ 3 | path: '/myFocus', 4 | name: 'myFocus', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/myFocus/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/myWallet.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/wallet/myWallet', 3 | name: 'myWallet', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/wallet/myWallet.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/newProductLaunch.js: -------------------------------------------------------------------------------- 1 | 2 | // 爱逛好店 3 | export default [{ 4 | path: '/newProductLaunch', 5 | name: 'newProductLaunch', 6 | meta: { 7 | index: 2 8 | }, 9 | component: () => import('@/views/newProductLaunch/index') 10 | }] 11 | -------------------------------------------------------------------------------- /src/router/modules/nodeApplication.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/node/nodeApplication', 3 | name: 'nodeApplication', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/node/nodeApplication.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/nodePool.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/pool/nodePool', 3 | name: 'nodePool', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/pool/nodePool.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/order.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/order', 4 | name: 'order', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/order/index.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/orderDetail.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/order/orderDetail', 3 | name: 'home', 4 | meta: { 5 | index: 3 6 | }, 7 | component: () => import('@/views/order/orderDetail.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/pendingReceipt.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/order/pendingReceipt', 4 | name: 'pendingReceipt', 5 | meta: { 6 | index: 11 7 | }, 8 | component: () => import('@/views/order/pendingReceipt.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/personInfo.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/mine/personInfo', 4 | name: 'personInfo', 5 | meta: { 6 | index: 13 7 | }, 8 | component: () => import('@/views/mine/personInfo.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/phoneNumberSetting.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/phoneNumberSetting', 3 | name: 'phoneNumberSetting', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/phoneNumberSetting.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/phoneRegister.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/register/phoneRegister', 4 | name: 'phoneRegister', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/register/phoneRegister') 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/router/modules/phoneRegisterTwo.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/register/phoneRegisterTwo', 4 | name: 'phoneRegisterTwo', 5 | meta: { 6 | index: 3 7 | }, 8 | component: () => import('@/views/register/phoneRegisterTwo') 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/router/modules/premiumRanking.js: -------------------------------------------------------------------------------- 1 | // 优品排行 2 | export default [{ 3 | path: '/premiumRanking', 4 | name: 'premiumRanking', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/premiumRanking/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/product.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-03 16:10:14 8 | * @FilePath: /vue-jd-h5/src/router/modules/product.js 9 | */ 10 | export default [{ 11 | path: '/classify/product', 12 | name: 'product', 13 | meta: { 14 | index: 25 15 | }, 16 | component: () => import('@/views/product/index.vue') 17 | }] 18 | -------------------------------------------------------------------------------- /src/router/modules/recommend.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: 'classify/recommend', 3 | name: 'recommend', 4 | meta: { 5 | index: 12 6 | }, 7 | component: () => import('@/views/classify/recommend.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/search.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/search', 4 | name: 'search', 5 | meta: { 6 | index: 17 7 | }, 8 | component: () => import('@/views/search/index.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/setting.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/mine/setting', 4 | name: 'setting', 5 | meta: { 6 | index: 12 7 | }, 8 | component: () => import('@/views/mine/setting.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/settingMail.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/mine/settingMail', 3 | name: 'settingMail', 4 | meta: { 5 | index: 14 6 | }, 7 | component: () => import('@/views/mine/settingMail.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/shippingAddress.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/mine/shippingAddress', 4 | name: 'shippingAddress', 5 | meta: { 6 | index: 12 7 | }, 8 | component: () => import('@/views/mine/shippingAddress.vue') 9 | } 10 | ] 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/router/modules/specialSpike.js: -------------------------------------------------------------------------------- 1 | // 特价秒杀 2 | export default [{ 3 | path: '/specialSpike', 4 | name: 'specialSpike', 5 | meta: { 6 | index: 2 7 | }, 8 | component: () => import('@/views/specialSpike/index') 9 | }] 10 | -------------------------------------------------------------------------------- /src/router/modules/stateNode.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/node/stateNode', 3 | name: 'stateNode', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/node/stateNode.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/storeDetail.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path:'/storeDetail', 4 | name:'storeDetail', 5 | meta: { 6 | index: 21 7 | }, 8 | component: () => import('@/views/storeDetail/index.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/superNode.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/node/superNode', 3 | name: 'superNode', 4 | meta: { 5 | index: 15 6 | }, 7 | component: () => import('@/views/node/superNode.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/tabbar.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:05:34 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 15:26:00 8 | * @FilePath: /refactor-with-vue3/src/router/modules/tabbar.js 9 | */ 10 | export default [{ 11 | path: '/index', 12 | name: 'index', 13 | meta: { 14 | index: 1 15 | }, 16 | component: () => import('@/views/home/index.vue') 17 | }, 18 | { 19 | path: '/classify', 20 | name: 'classify', 21 | meta: { 22 | index: 1 23 | }, 24 | component: () => import('@/views/classify/index.vue') 25 | }, 26 | { 27 | path: '/shopCart', 28 | name: 'shopCart', 29 | meta: { 30 | index: 1 31 | }, 32 | component: () => import('@/views/shopCart/index.vue') 33 | }, 34 | { 35 | path: '/mine', 36 | name: 'mine', 37 | meta: { 38 | index: 1 39 | }, 40 | component: () => import('@/views/mine/index.vue') 41 | }, 42 | ] 43 | -------------------------------------------------------------------------------- /src/router/modules/toBeDelivered.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/order/toBeDelivered', 4 | name: 'toBeDelivered', 5 | meta: { 6 | index: 11 7 | }, 8 | component: () => import('@/views/order/toBeDelivered.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/router/modules/transactionDetails.js: -------------------------------------------------------------------------------- 1 | export default [{ 2 | path: '/order/transactionDetails', 3 | name: 'transactionDetails', 4 | meta: { 5 | index: 4 6 | }, 7 | component: () => import('@/views/order/transactionDetails.vue') 8 | }] 9 | -------------------------------------------------------------------------------- /src/router/modules/viewLogistics.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '/order/viewLogistics', 4 | name: 'viewLogistics', 5 | meta: { 6 | index: 12 7 | }, 8 | component: () => import('@/views/order/viewLogistics.vue') 9 | } 10 | ] -------------------------------------------------------------------------------- /src/store/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:19:50 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 20:35:02 8 | * @FilePath: /refactor-with-vue3/src/store/index.js 9 | */ 10 | 11 | import { createStore } from 'vuex' 12 | 13 | import cart from './modules/cart' 14 | import search from './modules/search' 15 | 16 | export default createStore({ 17 | modules: { 18 | cart, 19 | search 20 | }, 21 | strict: process.env.NODE_ENV !== 'production' 22 | }) 23 | -------------------------------------------------------------------------------- /src/store/modules/cart.js: -------------------------------------------------------------------------------- 1 | const state = { 2 | items: [], 3 | name: 'test', 4 | count: 0, 5 | // cartArray: JSON.parse(localStorage.getItem('cartArray')) || [], 6 | checkoutStatus: null 7 | } 8 | 9 | // getters 10 | const getters = { 11 | // goodsCount(state) { 12 | // let count = 0 13 | // state.cartArray.forEach(it => { 14 | // count += it.count 15 | // }) 16 | // return count 17 | // }, 18 | cartProducts: (state, getters, rootState) => { 19 | return state.items.map(({ 20 | id, 21 | quantity 22 | }) => { 23 | const product = rootState.products.all.find(product => product.id === id) 24 | return { 25 | title: product.title, 26 | price: product.price, 27 | quantity 28 | } 29 | }) 30 | }, 31 | 32 | cartTotalPrice: (state, getters) => { 33 | return getters.cartProducts.reduce((total, product) => { 34 | return total + product.price * product.quantity 35 | }, 0) 36 | } 37 | } 38 | 39 | // actions 40 | const actions = { 41 | checkout({ 42 | commit, 43 | state 44 | }, products) { 45 | const savedCartItems = [...state.items] 46 | commit('setCheckoutStatus', null) 47 | commit('setCartItems', { 48 | items: [] 49 | }) 50 | }, 51 | 52 | addProductToCart({ 53 | state, 54 | commit 55 | }, product) { 56 | commit('setCheckoutStatus', null) 57 | if (product.inventory > 0) { 58 | const cartItem = state.items.find(item => item.id === product.id) 59 | if (!cartItem) { 60 | commit('pushProductToCart', { 61 | id: product.id 62 | }) 63 | } else { 64 | commit('incrementItemQuantity', cartItem) 65 | } 66 | // remove 1 item from stock 67 | commit('products/decrementProductInventory', { 68 | id: product.id 69 | }, { 70 | root: true 71 | }) 72 | } 73 | } 74 | } 75 | 76 | // mutations 77 | const mutations = { 78 | addToCart(state) { 79 | state.count++ 80 | }, 81 | pushProductToCart(state, { 82 | id 83 | }) { 84 | state.items.push({ 85 | id, 86 | quantity: 1 87 | }) 88 | }, 89 | 90 | incrementItemQuantity(state, { 91 | id 92 | }) { 93 | const cartItem = state.items.find(item => item.id === id) 94 | cartItem.quantity++ 95 | }, 96 | 97 | setCartItems(state, { 98 | items 99 | }) { 100 | state.items = items 101 | }, 102 | 103 | setCheckoutStatus(state, status) { 104 | state.checkoutStatus = status 105 | } 106 | } 107 | 108 | export default { 109 | namespaced: true, 110 | state, 111 | getters, 112 | actions, 113 | mutations 114 | } 115 | -------------------------------------------------------------------------------- /src/store/modules/search.js: -------------------------------------------------------------------------------- 1 | import { setStore } from "../../utils/util"; 2 | const state = { 3 | searchHistory: [] 4 | } 5 | const getters = {} 6 | const mutations = { 7 | addHistory(state, searchHistory) { 8 | state.searchHistory.unshift(searchHistory) 9 | }, 10 | setHistory(state, searchHistory) { 11 | state.searchHistory = searchHistory 12 | setStore('searchHistory', searchHistory) 13 | }, 14 | } 15 | const actions = {} 16 | 17 | export default { 18 | namespaced: true, 19 | state, 20 | getters, 21 | actions, 22 | mutations 23 | } 24 | -------------------------------------------------------------------------------- /src/styles/base.scss: -------------------------------------------------------------------------------- 1 | body, 2 | div, 3 | span, 4 | header, 5 | footer, 6 | nav, 7 | section, 8 | aside, 9 | article, 10 | ul, 11 | dl, 12 | dt, 13 | cite, 14 | dd, 15 | li, 16 | a, 17 | p, 18 | h1, 19 | h2, 20 | h3, 21 | h4, 22 | h5, 23 | h6, 24 | i, 25 | b, 26 | textarea, 27 | button, 28 | input, 29 | select, 30 | figure, 31 | figcaption { 32 | padding: 0; 33 | margin: 0; 34 | list-style: none; 35 | font-style: normal; 36 | text-decoration: none; 37 | border: none; 38 | font-family: "Microsoft Yahei", sans-serif; 39 | -webkit-tap-highlight-color: transparent; 40 | -webkit-font-smoothing: antialiased; 41 | -webkit-box-sizing: border-box; 42 | -moz-box-sizing: border-box; 43 | box-sizing: border-box; 44 | 45 | &:focus { 46 | outline: none; 47 | } 48 | } 49 | 50 | //移动端点击高亮 51 | html, 52 | body { 53 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 54 | } 55 | 56 | del { 57 | color: #949497; 58 | } 59 | 60 | input { 61 | border: none; 62 | outline: none; 63 | -webkit-appearance: none; 64 | -webkit-appearance: none; 65 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 66 | } 67 | 68 | textarea { 69 | border: none; 70 | outline: none; 71 | } 72 | 73 | button { 74 | border: none; 75 | outline: none; 76 | } 77 | 78 | a { 79 | text-decoration: none; 80 | color: #333; 81 | } 82 | 83 | li { 84 | list-style-type: none; 85 | } 86 | 87 | //解决端遮罩层穿透 88 | body.dialog-open { 89 | position: fixed; 90 | width: 100%; 91 | } -------------------------------------------------------------------------------- /src/styles/index.scss: -------------------------------------------------------------------------------- 1 | @import './base.scss'; -------------------------------------------------------------------------------- /src/styles/mixin.scss: -------------------------------------------------------------------------------- 1 | @import './base.scss'; 2 | $orange: #FF6B01; 3 | $red: #F63515; 4 | $bc: #F7F7F7; 5 | $fc:#fff; 6 | 7 | @mixin border-top-1px($color) { 8 | &:before { 9 | border-top: 1px solid $color; 10 | } 11 | } 12 | 13 | @mixin border-right-1px($color) { 14 | &:before { 15 | border-right: 1px solid $color; 16 | } 17 | } 18 | 19 | @mixin border-bottom-1px($color) { 20 | &:before { 21 | border-bottom: 1px solid $color; 22 | } 23 | } 24 | 25 | @mixin border-left-1px($color) { 26 | &:before { 27 | border-left: 1px solid $color; 28 | } 29 | } 30 | 31 | @mixin border-1px($color) { 32 | position: relative; 33 | 34 | &:after { 35 | content: ''; 36 | pointer-events: none; //解决iphone上的点击无效Bug 37 | position: absolute; 38 | left: 0; 39 | top: 0; 40 | transform-origin: 0 0; 41 | border: 1px solid $color; 42 | } 43 | } 44 | 45 | //圆角 46 | @mixin borderRadius($radius) { 47 | -webkit-border-radius: $radius; 48 | -moz-border-radius: $radius; 49 | -ms-border-radius: $radius; 50 | -o-border-radius: $radius; 51 | border-radius: $radius; 52 | } 53 | 54 | //1px底部边框 55 | @mixin border-1px($color) { 56 | position: relative; 57 | 58 | &:after { 59 | display: block; 60 | position: absolute; 61 | left: 0; 62 | bottom: 0; 63 | width: 100%; 64 | border-top: 1px solid $color; 65 | content: ''; 66 | } 67 | } 68 | 69 | //定位全屏 70 | @mixin allcover { 71 | position: absolute; 72 | top: 0; 73 | right: 0; 74 | } 75 | 76 | //定位上下左右居中 77 | @mixin center { 78 | position: absolute; 79 | top: 50%; 80 | left: 50%; 81 | transform: translate(-50%, -50%); 82 | } 83 | 84 | //定位上下居中 85 | @mixin ct { 86 | position: absolute; 87 | top: 50%; 88 | transform: translateY(-50%); 89 | } 90 | 91 | //定位左右居中 92 | @mixin cl { 93 | position: absolute; 94 | left: 50%; 95 | transform: translateX(-50%); 96 | } 97 | 98 | //宽高 99 | @mixin wh($width, $height) { 100 | width: $width; 101 | height: $height; 102 | } 103 | 104 | //字体大小、行高、字体 105 | @mixin font($size, $line-height, $family: 'Microsoft YaHei') { 106 | font: #{$size}/#{$line-height} $family; 107 | } 108 | 109 | //字体大小,颜色 110 | @mixin sc($size, $color) { 111 | font-size: $size; 112 | color: $color; 113 | } 114 | 115 | @mixin boxSizing { 116 | -webkit-box-sizing: border-box; 117 | -moz-box-sizing: border-box; 118 | box-sizing: border-box; 119 | } 120 | 121 | //flex 布局和 子元素 对其方式 122 | @mixin fj($type: space-between) { 123 | display: flex; 124 | justify-content: $type; 125 | } -------------------------------------------------------------------------------- /src/utils/eventBus.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @version: v 1.0.0 3 | * @Github: https://github.com/GitHubGanKai 4 | * @Author: GitHubGanKai 5 | * @Date: 2021-01-01 17:19:50 6 | * @LastEditors: gankai 7 | * @LastEditTime: 2021-01-02 15:39:38 8 | * @FilePath: /refactor-with-vue3/src/utils/eventBus.js 9 | */ 10 | import { getCurrentInstance } from 'vue' 11 | 12 | class EventBus { 13 | constructor(app) { 14 | if (!this.handles) { 15 | Object.defineProperty(this, 'handles', { 16 | value: {}, 17 | enumerable: false 18 | }) 19 | } 20 | this.app = app 21 | // _uid和EventName的映射 22 | this.eventMapUid = {} 23 | } 24 | setEventMapUid(uid, eventName) { 25 | if (!this.eventMapUid[uid]) { 26 | this.eventMapUid[uid] = [] 27 | } 28 | this.eventMapUid[uid].push(eventName) 29 | // 把每个_uid订阅的事件名字push到各自uid所属的数组里 30 | } 31 | $on(eventName, callback, vm) { 32 | // vm是在组件内部使用时组件当前的this用于取_uid 33 | if (!this.handles[eventName]) { 34 | this.handles[eventName] = [] 35 | } 36 | this.handles[eventName].push(callback) 37 | this.setEventMapUid(vm._uid, eventName) 38 | } 39 | $emit() { 40 | let args = [...arguments] 41 | let eventName = args[0] 42 | let params = args.slice(1) 43 | if (this.handles[eventName]) { 44 | let len = this.handles[eventName].length 45 | for (let i = 0; i < len; i++) { 46 | this.handles[eventName][i](...params) 47 | } 48 | } 49 | } 50 | $offVmEvent(uid) { 51 | let currentEvents = this.eventMapUid[uid] || [] 52 | currentEvents.forEach(event => { 53 | this.$off(event) 54 | }) 55 | } 56 | $off(eventName) { 57 | delete this.handles[eventName] 58 | } 59 | } 60 | 61 | let $EventBus = {} 62 | $EventBus.install = (app) => { 63 | app.config.globalProperties.$eventBus = new EventBus(app) 64 | app.mixin({ 65 | beforeUnmount() { 66 | const currentInstance = getCurrentInstance(); 67 | // 拦截beforeUnmount钩子,自动销毁自身所有订阅的事件 68 | this.$eventBus.$offVmEvent(currentInstance._uid) 69 | } 70 | }) 71 | } 72 | export default $EventBus 73 | -------------------------------------------------------------------------------- /src/utils/util.js: -------------------------------------------------------------------------------- 1 | export const registerPlugins = (plugins) => { 2 | return { 3 | install(app) { 4 | plugins.forEach(plugin => { 5 | app.use(plugin) 6 | }) 7 | } 8 | } 9 | } 10 | 11 | // 存储localStorage 12 | export const setStore = (name, content) => { 13 | if (!name) return 14 | localStorage.setItem(name, JSON.stringify(content)) 15 | } 16 | 17 | // 获取localStorage 18 | export const getStore = name => { 19 | if (!name) return 20 | return JSON.parse(localStorage.getItem(name)) 21 | } 22 | 23 | export function removeSpace(value) { 24 | return value.replace(/\s+/g, '') 25 | } 26 | 27 | export function formValidate(val, type) { 28 | const phoneReg = /(^1[3|4|5|7|8]\d{9}$)|(^09\d{8}$)/ 29 | const emailReg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/ 30 | if (val === '') { 31 | return false 32 | } else { 33 | // 非空验证 34 | if (type === 'require') { 35 | return !!removeSpace(val) 36 | } 37 | if (type === 'phone') { 38 | return phoneReg.test(val) 39 | } 40 | if (type === 'email') { 41 | return emailReg.test(val) 42 | } 43 | } 44 | } 45 | 46 | // 获取url参数 47 | export function getUrlKey(name) { 48 | return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null 49 | } 50 | 51 | // 数组去重 52 | export function dedupe(array) { 53 | return Array.from(new Set(array)) 54 | } 55 | 56 | export const ModalHelper = ((bodyCls) => { 57 | let scrollTop 58 | return { 59 | afterOpen: function () { 60 | scrollTop = document.scrollingElement.scrollTop 61 | document.body.classList.add(bodyCls) 62 | document.body.style.top = -scrollTop + 'px' 63 | }, 64 | beforeClose: function () { 65 | document.body.classList.remove(bodyCls) 66 | // scrollTop lost after set position:fixed, restore it back. 67 | document.scrollingElement.scrollTop = scrollTop 68 | } 69 | } 70 | })('dialog-open') 71 | -------------------------------------------------------------------------------- /src/views/classify/index.scss: -------------------------------------------------------------------------------- 1 | @import "../../styles/mixin.scss"; 2 | .classify { 3 | height: 100%; 4 | .home-header { 5 | font-size: 18px; 6 | color: #3a3a3a; 7 | font-weight: 600; 8 | text-align: center; 9 | line-height: 50px; 10 | background-color: #fff; 11 | } 12 | .search-wrap { 13 | @include fj; 14 | width: 100%; 15 | background: #fff; 16 | .nav-side-wrapper { 17 | width: 88px; 18 | height: 100%; 19 | overflow: hidden; 20 | overflow-y: scroll; 21 | .nav-side { 22 | width: 100%; 23 | @include boxSizing; 24 | background: #f8f8f8; 25 | li { 26 | width: 100%; 27 | height: 77px; 28 | text-align: center; 29 | font-weight: 600; 30 | font-size: 14px; 31 | display: flex; 32 | justify-content: center; 33 | align-items: center; 34 | color: #949497; 35 | flex-direction: column; 36 | &.active { 37 | color: #d8182d; 38 | border-left: 3px solid transparent; 39 | border-color: #d8182d; 40 | background: #fff; 41 | } 42 | } 43 | } 44 | } 45 | .search-content { 46 | width: 80%; 47 | height: 100%; 48 | padding: 0 16px; 49 | background: #fff; 50 | padding-bottom: 30px; 51 | @include boxSizing; 52 | .swiper-container { 53 | width: 100%; 54 | .swiper-slide { 55 | width: 100%; 56 | padding-top: 20px; 57 | .goods-title { 58 | font-size: 14px; 59 | color: #d8182d; 60 | font-weight: 600; 61 | padding-bottom: 10px; 62 | } 63 | .category-main-img { 64 | width: 100%; 65 | } 66 | .category-list { 67 | display: flex; 68 | flex-wrap: wrap; 69 | flex-shrink: 0; 70 | width: 100%; 71 | .catogory-title { 72 | width: 100%; 73 | font-size: 34px; 74 | font-weight: 500; 75 | padding: 40px 0; 76 | } 77 | .product-item { 78 | width: 33%; 79 | margin-bottom: 20px; 80 | text-align: center; 81 | font-size: 30px; 82 | .item-img { 83 | width: 65px; 84 | height: 80px; 85 | } 86 | .product-title { 87 | color: #3a3a3a; 88 | font-size: 11px; 89 | font-weight: 600; 90 | // width: 50%; 91 | white-space: nowrap; 92 | } 93 | } 94 | } 95 | } 96 | } 97 | } 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /src/views/error/404.vue: -------------------------------------------------------------------------------- 1 | 10 | 13 | 14 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/views/error/NoPermission.vue: -------------------------------------------------------------------------------- 1 | 10 | 13 | 14 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/views/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 13 | 14 | 19 | 20 | 28 | -------------------------------------------------------------------------------- /src/views/mine/aboutAs.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 27 | 28 | 92 | -------------------------------------------------------------------------------- /src/views/mine/countryRegion.vue: -------------------------------------------------------------------------------- 1 | 34 | 35 | 67 | 68 | 111 | -------------------------------------------------------------------------------- /src/views/mine/setInfo.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 20 | 21 | 49 | -------------------------------------------------------------------------------- /src/views/mine/setting.vue: -------------------------------------------------------------------------------- 1 | 10 | 36 | 37 | 49 | 50 | 95 | --------------------------------------------------------------------------------