diff --git a/package-lock.json b/package-lock.json index 0773f5652172b72ee070775702733348be30f2d8..ae2d8f67c0b6ee2df4589c2870c197b43e196b28 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,9 @@ "name": "jifen", "version": "0.0.0", "dependencies": { - "vue": "^3.3.4" + "axios": "^1.5.0", + "vue": "^3.3.4", + "vue-router": "^4.2.4" }, "devDependencies": { "@vitejs/plugin-vue": "^4.2.3", @@ -443,6 +445,11 @@ "@vue/shared": "3.3.4" } }, + "node_modules/@vue/devtools-api": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz", + "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==" + }, "node_modules/@vue/reactivity": { "version": "3.3.4", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz", @@ -499,6 +506,32 @@ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/copy-anything": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", @@ -526,6 +559,14 @@ "ms": "^2.1.1" } }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/errno": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", @@ -581,6 +622,38 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -698,6 +771,25 @@ "node": ">=4" } }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -791,6 +883,11 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", @@ -928,6 +1025,20 @@ "@vue/server-renderer": "3.3.4", "@vue/shared": "3.3.4" } + }, + "node_modules/vue-router": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.2.4.tgz", + "integrity": "sha512-9PISkmaCO02OzPVOMq2w82ilty6+xJmQrarYZDkjZBfl4RvYAlt4PKnEX21oW4KTtWfa9OuO/b3qk1Od3AEdCQ==", + "dependencies": { + "@vue/devtools-api": "^6.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } } } } diff --git a/package.json b/package.json index f92add174783f5b306df731101e8af80c0075678..9530a470feb3bcf0d987a476e0962d41b1372905 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,9 @@ "preview": "vite preview" }, "dependencies": { - "vue": "^3.3.4" + "axios": "^1.5.0", + "vue": "^3.3.4", + "vue-router": "^4.2.4" }, "devDependencies": { "@vitejs/plugin-vue": "^4.2.3", diff --git a/src/App.vue b/src/App.vue index 2187502a974f59be88197c0f6261b1eefc56e11e..6339ce8aa561444a43d1f29cd778a3c4f481321e 100644 --- a/src/App.vue +++ b/src/App.vue @@ -3,6 +3,11 @@ import Topbar from './components/Topbar.vue' import Header from './components/Header.vue' import Footer from './components/Footer.vue' +import { reactive } from "vue"; + + + + + + + \ No newline at end of file diff --git a/src/assets/img/404.94e7c552.jpg b/src/assets/img/404.94e7c552.jpg new file mode 100644 index 0000000000000000000000000000000000000000..35f28620145a8050fe26a9c5272f204dd54640cf Binary files /dev/null and b/src/assets/img/404.94e7c552.jpg differ diff --git a/src/assets/img/ad.4c6b6225.png b/src/assets/img/ad.4c6b6225.png new file mode 100644 index 0000000000000000000000000000000000000000..c687529124301ede1d22195a42a28d983dd1cb95 Binary files /dev/null and b/src/assets/img/ad.4c6b6225.png differ diff --git a/src/assets/img/arrow.png b/src/assets/img/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..3fd9b95131e79c4d4d911ae7ebc636128aa7674e Binary files /dev/null and b/src/assets/img/arrow.png differ diff --git a/src/assets/img/banner.4c6b6225.png b/src/assets/img/banner.4c6b6225.png new file mode 100644 index 0000000000000000000000000000000000000000..c687529124301ede1d22195a42a28d983dd1cb95 Binary files /dev/null and b/src/assets/img/banner.4c6b6225.png differ diff --git a/src/assets/img/banner.f559b49d.png b/src/assets/img/banner.f559b49d.png new file mode 100644 index 0000000000000000000000000000000000000000..52930a76995b788e7408197c049c6dabd10e39e4 Binary files /dev/null and b/src/assets/img/banner.f559b49d.png differ diff --git a/src/assets/img/cart.png b/src/assets/img/cart.png new file mode 100644 index 0000000000000000000000000000000000000000..622c996963a1da0a3f4174637f473b2463ae3ab4 Binary files /dev/null and b/src/assets/img/cart.png differ diff --git a/src/assets/img/close.png b/src/assets/img/close.png new file mode 100644 index 0000000000000000000000000000000000000000..f8836df93277bc4ca671d5c2648b893fe59c9277 Binary files /dev/null and b/src/assets/img/close.png differ diff --git a/src/assets/img/hot.png b/src/assets/img/hot.png new file mode 100644 index 0000000000000000000000000000000000000000..03102bce777aafad13d7d1d84d6d02dbf1ee5ae0 Binary files /dev/null and b/src/assets/img/hot.png differ diff --git a/src/assets/img/indexLogo.6f8ac4f0.png b/src/assets/img/indexLogo.6f8ac4f0.png new file mode 100644 index 0000000000000000000000000000000000000000..0214bbb01e48305e7f35f7118535a33655997293 Binary files /dev/null and b/src/assets/img/indexLogo.6f8ac4f0.png differ diff --git a/src/assets/img/integral-01.9386d4bf.png b/src/assets/img/integral-01.9386d4bf.png new file mode 100644 index 0000000000000000000000000000000000000000..0147f15cf3a8fe8fe689b37716827cd84fbdae75 Binary files /dev/null and b/src/assets/img/integral-01.9386d4bf.png differ diff --git a/src/assets/img/integral-02.150d92a1.png b/src/assets/img/integral-02.150d92a1.png new file mode 100644 index 0000000000000000000000000000000000000000..2c5bf8d8c0e425465daed650a134ec670db3f61b Binary files /dev/null and b/src/assets/img/integral-02.150d92a1.png differ diff --git a/src/assets/img/integral-03.9870f3f1.png b/src/assets/img/integral-03.9870f3f1.png new file mode 100644 index 0000000000000000000000000000000000000000..a97f938413873bdc0455dd07900746792b2f30c2 Binary files /dev/null and b/src/assets/img/integral-03.9870f3f1.png differ diff --git a/src/assets/img/integral-04.afadcbdf.png b/src/assets/img/integral-04.afadcbdf.png new file mode 100644 index 0000000000000000000000000000000000000000..252b45f27a9156ec7c065e7f214c36af180d6946 Binary files /dev/null and b/src/assets/img/integral-04.afadcbdf.png differ diff --git a/src/assets/img/jingpin.png b/src/assets/img/jingpin.png new file mode 100644 index 0000000000000000000000000000000000000000..5eaf205476f8b1505f13d964d31f34491a4d601b Binary files /dev/null and b/src/assets/img/jingpin.png differ diff --git a/src/assets/img/listimg.jpg b/src/assets/img/listimg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..56702b57c0acb96f14d0edc3d41f6bc519f201ea Binary files /dev/null and b/src/assets/img/listimg.jpg differ diff --git a/src/assets/img/login-box-bg.png b/src/assets/img/login-box-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..48b5c79669612c702e94034ad88340712059c4ef Binary files /dev/null and b/src/assets/img/login-box-bg.png differ diff --git a/src/assets/img/love.png b/src/assets/img/love.png new file mode 100644 index 0000000000000000000000000000000000000000..c0a95d082249206ad86b9c857201d8023bd4c520 Binary files /dev/null and b/src/assets/img/love.png differ diff --git a/src/assets/img/monad.png b/src/assets/img/monad.png new file mode 100644 index 0000000000000000000000000000000000000000..518bf65b5c08d675c01594533ad0822679edaa61 Binary files /dev/null and b/src/assets/img/monad.png differ diff --git a/src/assets/img/score.png b/src/assets/img/score.png new file mode 100644 index 0000000000000000000000000000000000000000..70b330eda542a09a0ed70626695ee7b8fda6793f Binary files /dev/null and b/src/assets/img/score.png differ diff --git a/src/assets/img/search.png b/src/assets/img/search.png new file mode 100644 index 0000000000000000000000000000000000000000..ca381f26aaa5b194a861ef4653319c7dce886663 Binary files /dev/null and b/src/assets/img/search.png differ diff --git a/src/assets/img/section_hot.png b/src/assets/img/section_hot.png new file mode 100644 index 0000000000000000000000000000000000000000..ad7eff826c97d0a0e4495beb60959b4d66ad22f4 Binary files /dev/null and b/src/assets/img/section_hot.png differ diff --git a/src/assets/img/section_new.png b/src/assets/img/section_new.png new file mode 100644 index 0000000000000000000000000000000000000000..4302253dfed1512a943b20ba8340a2925a22acb7 Binary files /dev/null and b/src/assets/img/section_new.png differ diff --git a/src/assets/img/service.848ec511.png b/src/assets/img/service.848ec511.png new file mode 100644 index 0000000000000000000000000000000000000000..599f7226a3c375f53629a6d064e735b1e80587a5 Binary files /dev/null and b/src/assets/img/service.848ec511.png differ diff --git a/src/assets/img/slogan.7730f7f2.png b/src/assets/img/slogan.7730f7f2.png new file mode 100644 index 0000000000000000000000000000000000000000..07f29dc474bef25cc642199c4428e1102d06cf21 Binary files /dev/null and b/src/assets/img/slogan.7730f7f2.png differ diff --git a/src/assets/img/transaction.png b/src/assets/img/transaction.png new file mode 100644 index 0000000000000000000000000000000000000000..e48cf7a671d6188569fba681711eb06b7866886b Binary files /dev/null and b/src/assets/img/transaction.png differ diff --git a/src/assets/img/userImg.f8bbec5e.png b/src/assets/img/userImg.f8bbec5e.png new file mode 100644 index 0000000000000000000000000000000000000000..fa58a2876719786eba87f034b37ae5ab18451aba Binary files /dev/null and b/src/assets/img/userImg.f8bbec5e.png differ diff --git a/src/assets/img/wx.5584e874.png b/src/assets/img/wx.5584e874.png new file mode 100644 index 0000000000000000000000000000000000000000..55f809275e3acf3423b857fedbcc1d41d31449f8 Binary files /dev/null and b/src/assets/img/wx.5584e874.png differ diff --git a/src/components/Header.vue b/src/components/Header.vue index 5f403b00c7e6cf102239971c925d2ae54664ae0f..38b0984104ff789a600ef101656b989c72eacbf7 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -8,11 +8,11 @@
@@ -26,7 +26,14 @@ \ No newline at end of file diff --git a/src/components/home/List.vue b/src/components/home/List.vue new file mode 100644 index 0000000000000000000000000000000000000000..a14a034646c612bf7eb028338439e0a80d24d996 --- /dev/null +++ b/src/components/home/List.vue @@ -0,0 +1,106 @@ + + + + + \ No newline at end of file diff --git a/src/main.js b/src/main.js index 2425c0f745bef4d009cb6661b62fd9dfd62960b0..cdf456ee2ecebed02ce8f4962abc91735e9aa34d 100644 --- a/src/main.js +++ b/src/main.js @@ -1,5 +1,9 @@ import { createApp } from 'vue' import './style.css' import App from './App.vue' - -createApp(App).mount('#app') +import router from "./router"; +//第二步:将createApp(App)通过一个变量提收 +const app = createApp(App); +//第三步:在app中使用rouer +app.use(router); +app.mount('#app') diff --git a/src/request/api.js b/src/request/api.js new file mode 100644 index 0000000000000000000000000000000000000000..446ae800b103cd48fd5825356d011b8967e24494 --- /dev/null +++ b/src/request/api.js @@ -0,0 +1,7 @@ +// 统一管理项目中所有的请求路径 +// 引入request +import request from "./request" + +// 首页精品的地址 +export const JingpinAPI = () =>request.get("/products/recommend") +export const HotAPI = () =>request.get("/products/hot") diff --git a/src/request/request.js b/src/request/request.js new file mode 100644 index 0000000000000000000000000000000000000000..643915d9535066bc59b702d7d0bfa9df540bb932 --- /dev/null +++ b/src/request/request.js @@ -0,0 +1,38 @@ +// 引入axios +import axios from "axios" + +// 创建axios对象 +const instance = axios.create({ + // 基础地址 + baseURL:'http://tech.wolfcode.cn:8881/cms', + // 超时处理 + timeout:5000 +}) + +// 请求拦截器 +instance.interceptors.request.use(config=>{ + // 每次发送请求的时候,先经过请求拦截器拦截,然后再发送到服务器 + // config:包含关于本次请求的相关信息 + console.log("请求拦截器的配置config",config); + // 要返回config + return config; +},err=>{ + // 请求失败的时候执行 + return Promise.reject +}) + +// 响应拦截器 +instance.interceptors.response.use(res=>{ + // 后端返回数据的时候执行 + // res:是本次的响应对象 + // res.data:是后端给我们的真正数据 + console.log("响应拦截器中的res",res); + // 以后拿数据就可以直接获取到res.data了,不需要每次拿数据都写res.data + console.log(res.data); + return res.data; +},err=>{ + return Promise.reject +}) + +// 导出对象 +export default instance \ No newline at end of file diff --git a/src/router/index.js b/src/router/index.js new file mode 100644 index 0000000000000000000000000000000000000000..e642733001de6f259fcdbb1590593b533a0df916 --- /dev/null +++ b/src/router/index.js @@ -0,0 +1,36 @@ +import {createRouter,createWebHashHistory} from "vue-router" +// 定义路由规则 +const routes = [ +{ +path:"/", +redirect:"/home" +}, +{ +path:"/home", +component:()=>import("../views/Home.vue") +}, +{ +path:"/goods", +component:()=>import("../views/Goods.vue") +}, +{ +path:"/user", +component:()=>import("../views/User.vue") +}, +{ +path:"/order", +component:()=>import("../views/Order.vue") +}, +{ +path:"/free", +component:()=>import("../views/Free.vue") +} +] +// 创建router对象 +const router = createRouter({ +// 历史模式不能缺少 +history:createWebHashHistory(), +routes +}) +// 导出router +export default router \ No newline at end of file diff --git a/src/views/Free.vue b/src/views/Free.vue new file mode 100644 index 0000000000000000000000000000000000000000..6323bac6e28d0c12f11267b27c86051a069c35b1 --- /dev/null +++ b/src/views/Free.vue @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/src/views/Goods.vue b/src/views/Goods.vue new file mode 100644 index 0000000000000000000000000000000000000000..93d42be3e15cd6a318badfc915add2bf59b8698d --- /dev/null +++ b/src/views/Goods.vue @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/src/views/Home.vue b/src/views/Home.vue new file mode 100644 index 0000000000000000000000000000000000000000..e372caa1b6037313503dabf4b427443871ba8f61 --- /dev/null +++ b/src/views/Home.vue @@ -0,0 +1,152 @@ + + + + + + + diff --git a/src/views/Order.vue b/src/views/Order.vue new file mode 100644 index 0000000000000000000000000000000000000000..7415a466c3f7cb4f0270ff3d99e9e756651aa7ea --- /dev/null +++ b/src/views/Order.vue @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/src/views/User.vue b/src/views/User.vue new file mode 100644 index 0000000000000000000000000000000000000000..c436fd3c39c35c8be2ddab2d197dd559208a83f0 --- /dev/null +++ b/src/views/User.vue @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file