Commit 1e27b648 by Administrator

Merge branch 'dev' into 'master'

Dev

See merge request !2
parents 148bb131 a76af235
/* Logo 字体 */
@font-face {
font-family: "iconfont logo";
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
}
.logo {
font-family: "iconfont logo";
font-size: 160px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* tabs */
.nav-tabs {
position: relative;
}
.nav-tabs .nav-more {
position: absolute;
right: 0;
bottom: 0;
height: 42px;
line-height: 42px;
color: #666;
}
#tabs {
border-bottom: 1px solid #eee;
}
#tabs li {
cursor: pointer;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 16px;
border-bottom: 2px solid transparent;
position: relative;
z-index: 1;
margin-bottom: -1px;
color: #666;
}
#tabs .active {
border-bottom-color: #f00;
color: #222;
}
.tab-container .content {
display: none;
}
/* 页面布局 */
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main .logo {
color: #333;
text-align: left;
margin-bottom: 30px;
line-height: 1;
height: 110px;
margin-top: -50px;
overflow: hidden;
*zoom: 1;
}
.main .logo a {
font-size: 160px;
color: #333;
}
.helps {
margin-top: 40px;
}
.helps pre {
padding: 20px;
margin: 10px 0;
border: solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists {
width: 100% !important;
overflow: hidden;
*zoom: 1;
}
.icon_lists li {
width: 100px;
margin-bottom: 10px;
margin-right: 20px;
text-align: center;
list-style: none !important;
cursor: default;
}
.icon_lists li .code-name {
line-height: 1.2;
}
.icon_lists .icon {
display: block;
height: 100px;
line-height: 100px;
font-size: 42px;
margin: 10px auto;
color: #333;
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
-moz-transition: font-size 0.25s linear, width 0.25s linear;
transition: font-size 0.25s linear, width 0.25s linear;
}
.icon_lists .icon:hover {
font-size: 100px;
}
.icon_lists .svg-icon {
/* 通过设置 font-size 来改变图标大小 */
width: 1em;
/* 图标和文字相邻时,垂直对齐 */
vertical-align: -0.15em;
/* 通过设置 color 来改变 SVG 的颜色/fill */
fill: currentColor;
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
normalize.css 中也包含这行 */
overflow: hidden;
}
.icon_lists li .name,
.icon_lists li .code-name {
color: #666;
}
/* markdown 样式 */
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p {
margin: 1em 0;
}
.markdown>p,
.markdown>blockquote,
.markdown>.highlight,
.markdown>ol,
.markdown>ul {
width: 80%;
}
.markdown ul>li {
list-style: circle;
}
.markdown>ul li,
.markdown blockquote ul>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown>ul li p,
.markdown>ol li p {
margin: 0.6em 0;
}
.markdown ol>li {
list-style: decimal;
}
.markdown>ol li,
.markdown blockquote ol>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown>table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown>table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown>table th,
.markdown>table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown>table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown>br,
.markdown>p>br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
/* 代码高亮 */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*="language-"],
pre[class*="language-"] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*="language-"]::-moz-selection,
pre[class*="language-"] ::-moz-selection,
code[class*="language-"]::-moz-selection,
code[class*="language-"] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*="language-"]::selection,
pre[class*="language-"] ::selection,
code[class*="language-"]::selection,
code[class*="language-"] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*="language-"] {
padding: 1em;
margin: .5em 0;
overflow: auto;
}
:not(pre)>code[class*="language-"],
pre[class*="language-"] {
background: #f5f2f0;
}
/* Inline code */
:not(pre)>code[class*="language-"] {
padding: .1em;
border-radius: .3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.namespace {
opacity: .7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
background: hsla(0, 0%, 100%, .5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function,
.token.class-name {
color: #DD4A68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}
@font-face {
font-family: "iconfont"; /* Project id 3857911 */
src: url('iconfont.woff2?t=1673317221620') format('woff2'),
url('iconfont.woff?t=1673317221620') format('woff'),
url('iconfont.ttf?t=1673317221620') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-dingdanguanli35:before {
content: "\e727";
}
.icon-shangpinguanli:before {
content: "\e65d";
}
.icon-caiwuguanli:before {
content: "\e60a";
}
.icon-baobiaofenxi:before {
content: "\e661";
}
.icon-cangku_cangchuguanli_o:before {
content: "\eb51";
}
.icon-shengchanguanli:before {
content: "\eb37";
}
.icon-wuliuguanli:before {
content: "\e656";
}
.icon-dianpuguanli:before {
content: "\e62e";
}
{
"id": "3857911",
"name": "erp-official-website",
"font_family": "iconfont",
"css_prefix_text": "icon-",
"description": "",
"glyphs": [
{
"icon_id": "763150",
"name": "订单管理",
"font_class": "dingdanguanli35",
"unicode": "e727",
"unicode_decimal": 59175
},
{
"icon_id": "1277993",
"name": "商品管理",
"font_class": "shangpinguanli",
"unicode": "e65d",
"unicode_decimal": 58973
},
{
"icon_id": "1440372",
"name": "财务管理",
"font_class": "caiwuguanli",
"unicode": "e60a",
"unicode_decimal": 58890
},
{
"icon_id": "4320366",
"name": "报表分析",
"font_class": "baobiaofenxi",
"unicode": "e661",
"unicode_decimal": 58977
},
{
"icon_id": "5387773",
"name": "仓库_仓储管理_o",
"font_class": "cangku_cangchuguanli_o",
"unicode": "eb51",
"unicode_decimal": 60241
},
{
"icon_id": "7335566",
"name": "生产管理",
"font_class": "shengchanguanli",
"unicode": "eb37",
"unicode_decimal": 60215
},
{
"icon_id": "11481180",
"name": "物流管理",
"font_class": "wuliuguanli",
"unicode": "e656",
"unicode_decimal": 58966
},
{
"icon_id": "15077383",
"name": "店铺管理",
"font_class": "dianpuguanli",
"unicode": "e62e",
"unicode_decimal": 58926
}
]
}
...@@ -22,6 +22,8 @@ ...@@ -22,6 +22,8 @@
<% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css) { %> <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css) { %>
<link href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" rel="stylesheet" /> <link href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" rel="stylesheet" />
<% } %> <% } %>
<link rel="stylesheet" href="./iconfont/iconfont.css">
<script src="./iconfont/iconfont.js"></script>
<!-- 使用CDN的CSS文件 --> <!-- 使用CDN的CSS文件 -->
<script src="./config.js"></script> <script src="./config.js"></script>
</head> </head>
......
<template>
<footer class="banner_footer">
<div class="bottom-text">
<span style="margin-left: 20px">
<i class="el-icon-message" style="margin-right: 5px"></i>
<a href="mailto:support@jomalls.com">support@jomalls.com</a>
</span>
<span style="margin-left: 50px">
<i class="el-icon-map-location" style="margin-right: 5px"></i>
广州市南沙区丰泽东路106号
</span>
<span class="record-number">
<a href="https://beian.miit.gov.cn" target="_black">
粤ICP备2022141405号-1
</a>
</span>
<span style="margin-left: 50px">
九猫科技 Copyright © {{ currentYear }}
</span>
</div>
</footer>
</template>
<script>
export default {
name: 'PageFooter',
data() {
return {
currentYear: new Date().getFullYear(),
}
},
}
</script>
<style scoped>
.banner_footer {
color: #fff;
background-color: #20222e;
padding: 0 100px;
}
.record-number {
text-align: center;
margin-left: 50px;
}
.record-number a {
text-decoration: none;
color: #fff;
}
.bottom-text {
padding: 20px 0;
text-align: center;
}
.bottom-text span {
display: inline-block;
}
.bottom-text a {
color: #fff;
text-decoration: none;
}
</style>
<template> <template>
<header class="header"> <header class="header" :class="{ 'no-shadow': !shadow }">
<div class="container"> <div class="container">
<div class="logo"> <div class="logo">
<span class="logo_text"> <span class="logo_text">
...@@ -8,11 +8,14 @@ ...@@ -8,11 +8,14 @@
</div> </div>
<nav class="navbar"> <nav class="navbar">
<ul class="navbar_item_wrap"> <ul class="navbar_item_wrap">
<li class="navbar_item"><a href="">首页</a></li> <li
<li class="navbar_item"><a href="">核心功能</a></li> class="navbar_item"
<li class="navbar_item"><a href="">价格</a></li> :class="{ active: active === item.path }"
<li class="navbar_item"><a href="">需求痛点</a></li> v-for="item in navbar"
<li class="navbar_item"><a href="">关于我们</a></li> @click="changePath"
:key="item.path">
<router-link :to="item.path">{{ item.name }}</router-link>
</li>
</ul> </ul>
</nav> </nav>
<div class="right_btn"> <div class="right_btn">
...@@ -23,7 +26,7 @@ ...@@ -23,7 +26,7 @@
<span class="reg-btn" @click="register">注册</span> <span class="reg-btn" @click="register">注册</span>
</div> </div>
<el-button type="primary">免费试用</el-button> <el-button type="primary" @click="register">免费试用</el-button>
</div> </div>
</div> </div>
</header> </header>
...@@ -31,10 +34,35 @@ ...@@ -31,10 +34,35 @@
<script> <script>
export default { export default {
props: {
shadow: { type: Boolean },
},
inject: {
scrollParent: 'scrollParent',
},
data() { data() {
return {} return {
navbar: [
{ name: '首页', path: '/home' },
{ name: '核心功能', path: '/function' },
{ name: '价格', path: '/price' },
{ name: '需求痛点', path: '/demand_pain_point' },
{ name: '关于我们', path: '/about_us' },
],
}
},
computed: {
active() {
return this.$route.path
},
}, },
methods: { methods: {
changePath() {
this.scrollParent().scrollTo({
behavior: 'smooth',
top: 0,
})
},
login() { login() {
this.$router.push('/') this.$router.push('/')
}, },
...@@ -49,12 +77,17 @@ export default { ...@@ -49,12 +77,17 @@ export default {
.header { .header {
position: fixed; position: fixed;
z-index: 999; z-index: 999;
background: #0089ff; /* background: #0089ff; */
top: 0; top: 0;
right: 0; right: 0;
left: 0; left: 0;
/* box-shadow: 0 2px 10px 0 rgb(0 39 98 / 66%); */ /* box-shadow: 0 2px 10px 0 rgb(0 39 98 / 66%); */
} }
.header.no-shadow {
box-shadow: none !important;
}
.logo { .logo {
float: left; float: left;
margin-top: 10px; margin-top: 10px;
...@@ -65,6 +98,11 @@ export default { ...@@ -65,6 +98,11 @@ export default {
} }
.navbar_item { .navbar_item {
float: left; float: left;
position: relative;
}
.navbar_item:hover a {
color: #f19240;
} }
.navbar_item + .navbar_item { .navbar_item + .navbar_item {
margin-left: 30px; margin-left: 30px;
...@@ -74,8 +112,8 @@ export default { ...@@ -74,8 +112,8 @@ export default {
height: 60px; height: 60px;
line-height: 60px; line-height: 60px;
text-decoration: none; text-decoration: none;
color: #fff;
padding: 0 20px; padding: 0 20px;
color: #fff;
} }
.right_btn { .right_btn {
display: flex; display: flex;
...@@ -109,4 +147,22 @@ export default { ...@@ -109,4 +147,22 @@ export default {
.user-operate { .user-operate {
margin-right: 10px; margin-right: 10px;
} }
.active a {
color: #f19240;
font-weight: bold;
}
.active::after {
content: '';
width: 20px;
height: 2px;
background-color: #f19240;
border-radius: 4px;
display: block;
position: absolute;
left: 50%;
bottom: 8px;
transform: translateX(-50%);
}
</style> </style>
import Vue from 'vue' import Vue from 'vue'
import VueRouter from 'vue-router' import VueRouter from 'vue-router'
import Home from '../views/home.vue' import Home from '../views/home.vue'
import HomePage from '../views/homePage/index.vue'
import FunctionPage from '../views/function/functionPage.vue'
import PricePage from '../views/price/pricePage.vue'
import demandPage from '../views/demand/demandPage.vue'
import aboutPage from '../views/aboutus/aboutPage'
Vue.use(VueRouter) Vue.use(VueRouter)
...@@ -9,6 +14,34 @@ const routes = [ ...@@ -9,6 +14,34 @@ const routes = [
path: '/', path: '/',
name: 'home', name: 'home',
component: Home, component: Home,
redirect: '/home',
children: [
{
path: '/home',
name: 'homePage',
component: HomePage
},
{
path: '/function',
name: 'functionPage',
component: FunctionPage,
},
{
path: '/price',
name: 'pricePage',
component: PricePage,
},
{
path: '/demand_pain_point',
name: 'demandPage',
component: demandPage
},
{
path: '/about_us',
name: 'aboutUs',
component: aboutPage,
}
],
}, },
{ {
path: '/register', path: '/register',
......
<template>
<div class="about-us">
<div class="header-banner">
<div class="image">
<img
src="../../assets/images/banner-about.jpg"
style="width: 100%; height: 100%; object-fit: cover" />
</div>
<div class="text">
<h2>辅助跨境电商企业成为变革</h2>
<hr />
<ul>
<li>
<i class="i1"></i>
<span>与时俱进</span>
</li>
<li>
<i class="i2"></i>
<span>客户至上</span>
</li>
<li>
<i class="i3"></i>
<span>人尽奇才</span>
</li>
<li>
<i class="i4"></i>
<span>互利共赢</span>
</li>
</ul>
</div>
</div>
<div class="content-body">
<h2 style="margin-bottom: 20px; text-align: center">关于九猫</h2>
<div
class="jomals-description"
style="text-indent: 2em;">
九猫(西安)科技有限公司成立于2022年,致力于为企业出海提供降本提效的全域数智化一站式管理解决方案。
九猫科技核心团队拥有超过7年的跨境电商ERP开发经验,设计及开发过的项目覆盖产品管理系统,订单管理系统,供应链系统,供应商系统,生产管理系统,仓库管理系统,营销系统,OA系统等等。2022年开始转型并专注于DTC独立站平台的产品与服务,自主研发并推出“九猫ERP软件“。
大数据集成商家平台、营销、供应链、仓储物流、财务、报表等模块,纵向打通资源,横向综合业务,全方位深度赋能。
九猫人始终秉承着“顾客至上”的经营理念,以“保障用户数据安全、关心客户使用体验、促进产品不断创新”为己任,意在帮助更多的跨境电商企业实现精细化管理和数字化建设。
</div>
</div>
</div>
</template>
<script>
export default {
name: 'aboutUs',
}
</script>
<style scoped>
.header-banner {
position: relative;
overflow: hidden;
text-align: center;
}
.text {
position: absolute;
width: 100%;
left: 0;
top: 50%;
transform: translateY(-50%);
}
.text h2 {
font-size: 36px;
text-align: center;
color: #fff;
font-weight: bold;
}
.image {
height: 26vw;
}
.content-body {
height: calc(100vh - 26vw - 60px);
margin-top: 80px;
}
.jomals-description {
text-indent: 2em;
display: block;
width: 60vw;
margin: 0 auto;
font-size: 18px;
color: #333;
line-height: 36px;
}
.text hr {
border: none;
width: 30%;
height: 2px;
margin: 20px auto;
background: url(../../assets/images/banner-line.png) no-repeat;
background-size: 100% 100%;
}
.text ul {
display: flex;
align-items: center;
justify-content: center;
}
.text ul li:not(:last-child) {
margin-right: 40px;
}
.text li i {
display: inline-block;
width: 24px;
height: 24px;
margin-right: 10px;
vertical-align: top;
}
.text li span {
display: inline-block;
line-height: 24px;
vertical-align: top;
color: #fff;
}
.text li .i1 {
background: url(../../assets/images/banner-icon-01.png);
background-size: 100% 100%;
}
.text li .i2 {
background: url(../../assets/images/banner-icon-02.png);
background-size: 100% 100%;
}
.text li .i3 {
background: url(../../assets/images/banner-icon-03.png);
background-size: 100% 100%;
}
.text li .i4 {
background: url(../../assets/images/banner-icon-04.png);
background-size: 100% 100%;
}
</style>
<template> <template>
<div class="home-page"> <div class="home-page">
<!-- <Head /> --> <Head :shadow="headerShadow" />
<div class="login_bg">
<div class="logo">
<a href="/">
<span class="logo_text">
<img src="../assets/logo.png" height="40px" />
</span>
</a>
</div>
<div class="banner_text"> <main class="home-main">
<h1>智能化订单处理</h1> <router-view></router-view>
<h1 style="margin-left: 60px">数字化供采平台</h1> </main>
<h1 style="margin-left: 120px">多维度数据分析</h1>
</div>
<div class="login_content">
<h2 style="text-align: center">登录</h2>
<el-form
size="medium"
:model="ruleForm"
:rules="rules"
ref="ruleForm"
class="login_form">
<el-form-item prop="email">
<el-input
prefix-icon="el-icon-message"
style="background: #fff"
v-model="ruleForm.email"
placeholder="Email"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
:type="showPwd ? 'text' : 'password'"
prefix-icon="el-icon-lock"
style="background: #fff"
v-model="ruleForm.password"
placeholder="Password"
@keyup.enter.native="submitForm">
<i
@click="showPwd = !showPwd"
slot="suffix"
:class="{ eyes: true, open: !showPwd, close: showPwd }"></i>
</el-input>
</el-form-item>
<div style="text-align: center">
<button class="login-btn" @click="submitForm">登录</button>
</div>
<div style="margin-top: 20px; font-size: 14px; text-align: center">
还没有账号?
<router-link class="link" to="register">马上注册</router-link>
</div>
</el-form>
</div>
</div>
<!-- <main class="home-main">
<div
style="
font-size: 48px;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
">
</div>
</main> -->
<product-intro /> <Footer />
</div> </div>
</template> </template>
<script> <script>
// import Head from '../components/head.vue' import Footer from '../components/footer.vue'
import ProductIntro from '../components/product-intro.vue' import Head from '../components/head.vue'
import md5 from 'js-md5'
import { post } from '../utils/axios'
export default { export default {
name: 'HomePage', name: 'Home',
components: { ProductIntro }, components: { Head, Footer },
data() { provide() {
return { return {
ruleForm: { scrollParent: () => this.$el,
password: '', setHeaderShadow: (shadow) => (this.headerShadow = shadow),
email: '', }
checked: false,
},
rules: {
email: [
{ required: true, message: '请输入邮箱', trigger: 'blur' },
{
type: 'email',
message: '请输入正确的邮箱地址',
trigger: ['blur', 'change'],
},
],
password: [{ required: true, message: '请输入密码', trigger: 'blur' }],
}, },
showPwd: false, data() {
return {
headerShadow: true,
} }
}, },
mounted() { mounted() {
...@@ -151,89 +78,16 @@ export default { ...@@ -151,89 +78,16 @@ export default {
} }
.home-page .header { .home-page .header {
background: transparent;
transition: all 0.3s; transition: all 0.3s;
} }
.home-page.scrolling .header { .home-page.scrolling .header {
box-shadow: 0 2px 10px 0 rgb(0 39 98 / 66%); box-shadow: 0 2px 10px 0 rgb(0 39 98 / 66%);
background-color: rgba(45, 138, 254, 0.9); background-color: rgba(27, 28, 29, 0.9);
backdrop-filter: blur(10px); backdrop-filter: blur(10px);
} }
/* .home-main { .home-main {
padding-top: 60px; /* padding-top: 60px; */
height: calc(70vh - 60px);
background: linear-gradient(to bottom, #0089ff 0%, #0089ff 20%, #e8eef9);
} */
.logo {
position: absolute;
}
.logo_text {
display: inline-block;
line-height: 40px;
margin: 60px 0 0 80px;
}
.banner_text {
position: absolute;
top: 30%;
left: 10%;
line-height: 80px;
color: #fff;
}
.login_bg {
width: 100%;
height: 100vh;
position: relative;
image-rendering: -webkit-optimize-contrast;
background: url(../assets/banner.jpg) center / cover no-repeat;
}
.login_content {
padding: 18px;
background: rgba(255, 255, 255, 0.4);
position: absolute;
top: 50%;
left: 80%;
border-radius: 6px;
transform: translate(-50%, -50%);
box-sizing: border-box;
background-position: top right, center;
background-repeat: no-repeat;
background-size: 528px auto, contain;
}
.login_form {
padding: 40px;
width: 300px;
border-radius: 6px;
}
.login-btn {
width: 100%;
height: 38px;
display: block;
margin: 0 auto;
background: #006eff;
box-shadow: 0 4px 8px 0 rgb(26 90 216 / 32%);
border-radius: 4px;
font-size: 16px;
color: #fff;
cursor: pointer;
}
.eyes {
display: inline-block;
height: 14px;
width: 18px;
margin-top: 11px;
margin-right: 5px;
cursor: pointer;
}
.eyes.open {
background: url('../assets/eyes-open.png') no-repeat center / cover;
}
.eyes.close {
background: url('../assets/eyes-closed.png') no-repeat center / cover;
} }
</style> </style>
<template>
<div class="home-page">
<div class="banner-images">
<el-carousel
class="banner-images-inner"
:interval="5000"
height="33.333vw">
<el-carousel-item v-for="(item, index) in bannerImages" :key="index">
<img class="images" :src="item.image" style="width: 100vw" />
</el-carousel-item>
</el-carousel>
</div>
<product-intro />
<div class="docking-platform">
<h2 style="text-align: center; padding: 20px">对接平台</h2>
<div class="platforms">
<div class="platform-item"><img src="../../assets/logo1.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo2.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo3.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo4.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo5.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo6.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo7.png" /></div>
<div class="platform-item"><img src="../../assets/logo8.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo9.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo10.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo11.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo12.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo13.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo14.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo15.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo16.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo17.jpg" /></div>
<div class="platform-item"><img src="../../assets/logo18.jpg" /></div>
</div>
</div>
</div>
</template>
<script>
import ProductIntro from '../../components/product-intro.vue'
export default {
name: 'homePage',
components: {
ProductIntro,
},
data() {
return {
bannerImages: [
{ image: require('../../assets/banner/1.jpg') },
{ image: require('../../assets/banner/2.jpg') },
{ image: require('../../assets/banner/3.jpg') },
{ image: require('../../assets/banner/4.jpg') },
{ image: require('../../assets/banner/5.jpg') },
{ image: require('../../assets/banner/6.jpg') },
{ image: require('../../assets/banner/7.jpg') },
{ image: require('../../assets/banner/8.jpg') },
{ image: require('../../assets/banner/9.jpg') },
],
}
},
}
</script>
<style scoped>
.banner-images {
font-size: 48px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
background: linear-gradient(to bottom, #0089ff 0%, #0089ff 20%, #e8eef9);
}
.banner-images-inner {
width: 100%;
}
.docking-platform {
background: url(../../assets/footer.jpg) center / cover no-repeat;
padding: 0 100px 70px;
}
.docking-platform h2 {
color: #fff;
}
.platforms {
display: grid;
gap: 10px;
grid-template-columns: repeat(9, 1fr);
}
@media screen and (max-width: 1440px) {
.platforms {
grid-template-columns: repeat(9, 1fr);
}
}
@media screen and (max-width: 1000px) {
.platforms {
grid-template-columns: repeat(6, 1fr);
}
}
.platform-item {
padding: 20px;
background-color: #fff;
overflow: hidden;
border-radius: 6px;
}
.platforms img {
width: 100%;
}
</style>
...@@ -2,9 +2,11 @@ ...@@ -2,9 +2,11 @@
<div> <div>
<div class="login_bg"> <div class="login_bg">
<div class="logo"> <div class="logo">
<a href="/">
<span class="logo_text"> <span class="logo_text">
<img src="../assets/logo.png" height="40px" /> <img src="../assets/logo.png" height="40px" />
</span> </span>
</a>
</div> </div>
<div class="banner_text"> <div class="banner_text">
<h1>智能化订单处理</h1> <h1>智能化订单处理</h1>
...@@ -41,11 +43,9 @@ ...@@ -41,11 +43,9 @@
</el-input> </el-input>
</el-form-item> </el-form-item>
<div style="text-align: center"> <div style="text-align: center">
<button class="login-btn" @click="submitForm"> <button class="login-btn" @click="submitForm">登录</button>
登录
</button>
</div> </div>
<div style="margin-top: 20px; font-size: 14px; text-align: center;"> <div style="margin-top: 20px; font-size: 14px; text-align: center">
还没有账号? 还没有账号?
<router-link class="link" to="register">马上注册</router-link> <router-link class="link" to="register">马上注册</router-link>
</div> </div>
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
</span> </span>
</a> </a>
</div> </div>
<div class="login_content"> <div class="login_content">
<h2 style="text-align: center">用户注册</h2> <h2 style="text-align: center">用户注册</h2>
<el-form <el-form
...@@ -304,4 +305,5 @@ export default { ...@@ -304,4 +305,5 @@ export default {
top: 60px; top: 60px;
left: 80px; left: 80px;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment