Browse Source

引入网络请求接口

master
453530270@qq.com 3 years ago
parent
commit
793ce4e19e
  1. 1
      package.json
  2. 17
      src/api/home.js
  3. 283
      src/assets/css/home.css
  4. 49
      src/utils/request.js
  5. 44
      yarn.lock

1
package.json

@ -8,6 +8,7 @@
"lint": "vue-cli-service lint" "lint": "vue-cli-service lint"
}, },
"dependencies": { "dependencies": {
"axios": "^1.4.0",
"core-js": "^3.8.3", "core-js": "^3.8.3",
"echarts": "^5.4.2", "echarts": "^5.4.2",
"less-loader": "^11.1.3", "less-loader": "^11.1.3",

17
src/api/home.js

@ -0,0 +1,17 @@
// 导入axios实例
import request from '@/utils/request'
// 定义接口的传参
const api={
// 日客流趋势
daily_klqs:'index.php/allGroupTimeNum?granularity=daily'
}
// 获取群组
export function allGroupTimeNum(param) {
return request({
url: api.daily_klqs,
method: 'get',
param,
})
}

283
src/assets/css/home.css

@ -0,0 +1,283 @@
.gymbox {
margin-top: 3.2rem;
width: 100%;
background-image: url("../assets/img/gymbox_bg.png");
background-repeat: no-repeat;
background-size: 100%;
background-position: 0 0;
padding-top: 2.26rem;
height: 20rem;
}
.gymbox .gympic {
margin-left: auto;
margin-right: auto;
padding-top: 0rem;
height: 12.68rem;
width: 100%;
}
.gymbox .gympic img {
width: 90%;
margin-left: auto;
margin-right: auto;
margin-top: 1rem;
display: block;
padding-top: 0.2rem;
height: 16rem;
}
.gymbox .gymnum {
width: 60%;
margin: 0.6rem auto;
text-align: center;
height: 3rem;
padding-top: 1.4rem;
}
.gymbox .gymnum span {
font-size: 0.86rem;
display: block;
line-height: 1.2rem;
}
.gymbox .gymnum p {
line-height: 1.2;
height: 26px;
font-size: 14px;
font-weight: 600;
display: block;
}
/* 數據box */
.numbox {
width: 100%;
height: 4rem;
line-height: 1.2;
margin-top: 2.6rem;
}
.numbox .numicon {
display: block;
width: 20%;
height: 3.2rem;
float: left;
}
.numbox .numdiv {
width: 72%;
background-image: url("../assets/img/num_bg.png");
background-repeat: no-repeat;
background-position: 0 center;
background-size: 100%;
float: left;
margin-left: 0.68rem;
height: 4rem;
text-align: center;
}
.numbox .numdiv p {
display: block;
float: left;
width: 100%;
line-height: 0;
}
.numbox .numdiv .ndtitle {
padding-top: 0.4rem;
font-size: 1.08rem;
}
.numbox .numdiv .nddesc {
color: #ccc;
font-size: 0.4rem;
padding-bottom: 0.2rem;
}
/** 客流趋势 */
.klqs {
margin-top: 3rem;
background-image: url("../assets/img/klqs_bg.png");
background-repeat: no-repeat;
background-size: 100%;
height: 3.8rem;
background-position: -1.04rem 0.2rem;
}
.klqs .klqs_bg {
float: left;
/* width: 80%; */
margin-left: 4rem;
/* padding-left: 6.4rem; */
font-size: 1.6rem;
}
.klqs .klbtn {
float: left;
margin-left: 1.06rem;
}
.klqs .klbtn span {
display: block;
float: left;
width: 2.2rem;
height: 2.2rem;
margin-left: 0.4rem;
line-height: 2.2rem;
text-align: center;
border: 1px solid #006bff;
cursor: pointer;
}
/* 选择年月日后的样式变化 */
.klqs .klbtn span.spactive {
background-image: url('../assets/img/sactive_bg.png');
background-repeat: no-repeat;
background-size: 100%;
background-position: 0 0;
}
/** 場館飽和度 */
.cgbox {
background-image: url("../assets/img/cgbox_bg.png");
width: 100%;
height: 12rem;
background-position: center center;
background-size: 100% 100%;
margin-top: 2.4rem;
}
/* 饼图 */
.cgbox .cgpies {
width: 40%;
height: 12rem;
float: left;
}
.cgbox .cgleft {
width: 30%;
height: 12rem;
float: left;
}
.cgbox .cgleft>ul {
padding-left: 0.66rem;
}
.cgbox .cgright {
width: 30%;
height: 12rem;
float: left;
}
.cgbox .cgright>ul {
padding-left: 0.66rem;
}
.cgbox .cglist {
margin-top: 3rem;
}
.cgbox .cglist ul {
display: block;
width: 100%;
}
.cgbox .cglist ul li {
width: 100%;
list-style: none;
height: 0.66rem;
line-height: 0.66rem;
font-size: 0.66rem;
margin-top: 1rem;
}
.cgbox .cglist ul li span {
display: block;
float: left;
margin-left: 0.46rem;
}
.cgbox .cglist ul li span img {
width: 0.68rem;
height: 0.68rem;
}
.cgbox .cgright {
width: 30%;
height: 12rem;
float: left;
}
/* 今日人數 */
.today_rs {
margin-top: 2.6rem;
width: 100%;
}
.today_rs .tdrs_title {
background-image: url("../assets/img/klqs_bg.png");
background-repeat: no-repeat;
background-size: 100% 100%;
background-position: 0 0;
height: 3.2rem;
line-height: 2.86rem;
background-position: -1.04rem 0.2rem;
padding-left: 4.6rem;
font-size: 1.6rem;
}
/** 各場館實時 */
.pcgrs {
clear: both;
margin-top: 2.6rem;
width: 100%;
}
.pcgrs .pcgrs_title {
background-image: url("../assets/img/klqs_bg.png");
background-repeat: no-repeat;
background-size: 100%;
height: 3.8rem;
background-position: -1.04rem 0.2rem;
padding-left: 4.6rem;
font-size: 1.6rem;
}
.pcgrs .pcg_item {
margin-top: 0.4rem;
background-image: url("../assets/img/pcg_bg.png");
background-repeat: no-repeat;
height: 12rem;
width: 48%;
float: left;
margin-left: 2%;
}
.pcgrs .pcg_item .pcpos {
text-align: right;
font-size: 0.68rem;
display: block;
float: right;
margin-top: 1.6rem;
padding-right: 1.18rem;
}
.pcgrs .pcg_item .pcval {
font-size: 1.086rem;
margin-top: 6rem;
width: 68%;
display: block;
float: left;
text-align: center;
}
.pcgrs .pcg_item .pcrate {
/* width: 32%; */
display: block;
float: left;
font-size: 0.86rem;
margin-top: 4rem;
text-align: center;
}

49
src/utils/request.js

@ -0,0 +1,49 @@
import axios from 'axios'
//https://www.jb51.net/article/246548.htm
// 创建一个 axios 实例
const service = axios.create({
//baseURL: '/api', // 所有的请求地址前缀部分
//baseURL: publicConfig.BASE_API,
//baseURL:ahost,
timeout: 60000, // 请求超时时间毫秒
withCredentials: true, // 异步请求携带cookie
headers: {
// 设置后端需要的传参类型
'Content-Type': 'application/json',
},
})
// 添加请求拦截器
service.interceptors.request.use(
function (config) {
// 在发送请求之前做些什么
return config
},
function (error) {
// 对请求错误做些什么
return Promise.reject(error)
}
)
// 添加响应拦截器
service.interceptors.response.use(
function (response) {
//console.log(response)
// 2xx 范围内的状态码都会触发该函数。
// 对响应数据做点什么
// dataAxios 是 axios 返回数据中的 data
const dataAxios = response.data
// 这个状态码是和后端约定的
const code = dataAxios.reset
return dataAxios
},
function (error) {
// 超出 2xx 范围的状态码都会触发该函数。
// 对响应错误做点什么
console.log(error)
return Promise.reject(error)
}
)
export default service

44
yarn.lock

@ -2032,6 +2032,11 @@ async@^2.6.4:
dependencies: dependencies:
lodash "^4.17.14" lodash "^4.17.14"
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
at-least-node@^1.0.0: at-least-node@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz" resolved "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz"
@ -2049,6 +2054,15 @@ autoprefixer@^10.2.4:
picocolors "^1.0.0" picocolors "^1.0.0"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
axios@^1.4.0:
version "1.4.0"
resolved "https://registry.npmmirror.com/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f"
integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==
dependencies:
follow-redirects "^1.15.0"
form-data "^4.0.0"
proxy-from-env "^1.1.0"
babel-loader@^8.2.2: babel-loader@^8.2.2:
version "8.3.0" version "8.3.0"
resolved "https://registry.npmmirror.com/babel-loader/-/babel-loader-8.3.0.tgz" resolved "https://registry.npmmirror.com/babel-loader/-/babel-loader-8.3.0.tgz"
@ -2415,6 +2429,13 @@ colorette@^2.0.10:
resolved "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz" resolved "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz"
integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
combined-stream@^1.0.8:
version "1.0.8"
resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
dependencies:
delayed-stream "~1.0.0"
commander@^2.20.0: commander@^2.20.0:
version "2.20.3" version "2.20.3"
resolved "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz" resolved "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz"
@ -2747,6 +2768,11 @@ define-properties@^1.1.4:
has-property-descriptors "^1.0.0" has-property-descriptors "^1.0.0"
object-keys "^1.1.1" object-keys "^1.1.1"
delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
depd@2.0.0: depd@2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz" resolved "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz"
@ -3330,11 +3356,20 @@ flatted@^3.1.0:
resolved "https://registry.npmmirror.com/flatted/-/flatted-3.2.7.tgz" resolved "https://registry.npmmirror.com/flatted/-/flatted-3.2.7.tgz"
integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
follow-redirects@^1.0.0: follow-redirects@^1.0.0, follow-redirects@^1.15.0:
version "1.15.2" version "1.15.2"
resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz" resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz"
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
form-data@^4.0.0:
version "4.0.0"
resolved "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
dependencies:
asynckit "^0.4.0"
combined-stream "^1.0.8"
mime-types "^2.1.12"
forwarded@0.2.0: forwarded@0.2.0:
version "0.2.0" version "0.2.0"
resolved "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz" resolved "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz"
@ -4203,7 +4238,7 @@ mime-db@1.52.0, "mime-db@>= 1.43.0 < 2":
resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz" resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34:
version "2.1.35" version "2.1.35"
resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz" resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
@ -4972,6 +5007,11 @@ proxy-addr@~2.0.7:
forwarded "0.2.0" forwarded "0.2.0"
ipaddr.js "1.9.1" ipaddr.js "1.9.1"
proxy-from-env@^1.1.0:
version "1.1.0"
resolved "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
pseudomap@^1.0.2: pseudomap@^1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.npmmirror.com/pseudomap/-/pseudomap-1.0.2.tgz" resolved "https://registry.npmmirror.com/pseudomap/-/pseudomap-1.0.2.tgz"

Loading…
Cancel
Save