Commit b615a25d by qinjianhui

feat: 官网

parent 12be81ed
<template>
<footer class="banner_footer">
<h2 style="text-align: center; padding: 20px">对接平台</h2>
<div class="platforms">
<img src="../assets/logo1.jpg" />
<img src="../assets/logo2.jpg" />
<img src="../assets/logo3.jpg"/>
<img src="../assets/logo4.jpg"/>
<img src="../assets/logo5.jpg" />
<img src="../assets/logo6.jpg" />
<img src="../assets/logo7.png" />
<img src="../assets/logo8.jpg" />
<img src="../assets/logo9.jpg" />
<img src="../assets/logo10.jpg" />
<img src="../assets/logo11.jpg" />
<img src="../assets/logo12.jpg" />
<img src="../assets/logo13.jpg" />
<img src="../assets/logo14.jpg" />
<img src="../assets/logo15.jpg" />
<img src="../assets/logo16.jpg" />
<img src="../assets/logo17.jpg" />
<img src="../assets/logo18.jpg" />
</div>
<div class="bottom-text">
<span style="display: inline-block; margin-left: 20px">
<span style="margin-left: 20px">
<i class="el-icon-message" style="margin-right: 5px"></i>
support@jomalls.com
<a href="mailto:support@jomalls.com">support@jomalls.com</a>
</span>
<span style="display: inline-block; margin-left: 50px">
<span style="margin-left: 50px">
<i class="el-icon-map-location" style="margin-right: 5px"></i>
广州市南沙区丰泽东路106号
</span>
......@@ -35,14 +14,27 @@
粤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: url(../assets/footer.jpg) center / cover no-repeat;
padding: 0 20px;
background-color: #20222e;
padding: 0 100px;
}
.record-number {
......@@ -55,29 +47,16 @@
}
.bottom-text {
padding: 10px 0;
padding: 20px 0;
text-align: center;
}
.platforms {
display: grid;
gap: 10px;
grid-template-columns: repeat(9, 1fr);
}
@media screen and (max-width: 1440px) {
.platforms {
grid-template-columns: repeat(9,1fr);
}
.bottom-text span {
display: inline-block;
}
@media screen and (max-width: 1000px) {
.platforms {
grid-template-columns: repeat(6,1fr);
}
}
.platforms img {
width: 100%;
.bottom-text a {
color: #fff;
text-decoration: none;
}
</style>
<template>
<header class="header">
<header class="header" :class="{ 'no-shadow': !shadow }">
<div class="container">
<div class="logo">
<span class="logo_text">
......@@ -8,11 +8,14 @@
</div>
<nav class="navbar">
<ul class="navbar_item_wrap">
<li class="navbar_item"><a href="">首页</a></li>
<li class="navbar_item"><a href="">核心功能</a></li>
<li class="navbar_item"><a href="">价格</a></li>
<li class="navbar_item"><a href="">需求痛点</a></li>
<li class="navbar_item"><a href="">关于我们</a></li>
<li
class="navbar_item"
:class="{ active: active === item.path }"
v-for="item in navbar"
@click="changePath"
:key="item.path">
<router-link :to="item.path">{{ item.name }}</router-link>
</li>
</ul>
</nav>
<div class="right_btn">
......@@ -31,10 +34,35 @@
<script>
export default {
props: {
shadow: { type: Boolean },
},
inject: {
scrollParent: 'scrollParent',
},
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: {
changePath() {
this.scrollParent().scrollTo({
behavior: 'smooth',
top: 0,
})
},
login() {
this.$router.push('/login')
},
......@@ -49,12 +77,17 @@ export default {
.header {
position: fixed;
z-index: 999;
background: #0089ff;
/* background: #0089ff; */
top: 0;
right: 0;
left: 0;
/* box-shadow: 0 2px 10px 0 rgb(0 39 98 / 66%); */
}
.header.no-shadow {
box-shadow: none !important;
}
.logo {
float: left;
margin-top: 10px;
......@@ -65,6 +98,11 @@ export default {
}
.navbar_item {
float: left;
position: relative;
}
.navbar_item:hover a {
color: #f19240;
}
.navbar_item + .navbar_item {
margin-left: 30px;
......@@ -74,8 +112,8 @@ export default {
height: 60px;
line-height: 60px;
text-decoration: none;
color: #fff;
padding: 0 20px;
color: #fff;
}
.right_btn {
display: flex;
......@@ -109,4 +147,22 @@ export default {
.user-operate {
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>
<template>
<div class="product-intro">
<div class="function_bg">
<h2 style="text-align: center; padding-bottom: 20px">产品优势</h2>
<h2 style="text-align: center; padding-bottom: 40px">产品优势</h2>
<div class="product-pros">
<div class="product-pros-item">
<div class="grid-content">
......@@ -29,14 +29,11 @@
p-id="1686"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
生产管理
</h3>
<p style="padding: 10px">
生产单、交货单、财务核算一体化;
<br />
全流程日志,方便追溯和分析;
<br />
<p class="description">
生产单、交货单、财务核算一体化, 全流程日志,方便追溯和分析,
精准跟踪发货进度,支持分批发货。
</p>
</div>
......@@ -59,14 +56,11 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
订单管理
</h3>
<p style="padding: 10px">
多平台订单实时同步;
<br />
订单批量审核,一键拆分、合并订单;
<br />
<p class="description">
多平台订单实时同步, 订单批量审核,一键拆分、合并订单,
自动派单,扫码自动打印物流面单。
</p>
</div>
......@@ -93,15 +87,12 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
仓储管理
</h3>
<p style="padding: 10px">
规划最优拣货路径,提升仓库作业效率;
<br />
线上线下、多平台、多店铺库存实时同步;
<br />
数据化管理,进销存清晰明了。
<p class="description">
规划最优拣货路径,提升仓库作业效率,
线上线下、多平台、多店铺库存实时同步, 数据化管理,进销存清晰明了。
</p>
</div>
</div>
......@@ -127,14 +118,11 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
报表分析
</h3>
<p style="padding: 10px">
多维度利润分析,精准掌握店铺状态;
<br />
图表结合,数据准确清晰可视化;
<br />
<p class="description">
多维度利润分析,精准掌握店铺状态, 图表结合,数据准确清晰可视化,
开发业绩统计让公司管理有数据可循。
</p>
</div>
......@@ -161,14 +149,11 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
物流管理
</h3>
<p style="padding: 10px">
支持自定义规则进行物流商自动匹配;
<br />
支持根据包裹重量查询物流方式;
<br />
<p class="description">
支持自定义规则进行物流商自动匹配, 支持根据包裹重量查询物流方式,
物流轨迹实时查询,全程跟踪包裹状态。
</p>
</div>
......@@ -199,14 +184,11 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
商品管理
</h3>
<p style="padding: 10px">
支持绑定主商品,销售、生产、采购一体化;
<br />
一键导入店铺,同步供应;
<br />
<p class="description">
支持绑定主商品,销售、生产、采购一体化, 一键导入店铺,同步供应,
智能缺货预警,自动计算补货数量。
</p>
</div>
......@@ -233,15 +215,12 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
财务管理
</h3>
<p style="padding: 10px">
物流、广告、采购等多维度对账,提高财务工作效率;
<br />
放款双重审核,安全有保障;
<br />
降低管理、运营、产品成本,加快资金流转。
<p class="description">
物流、广告、采购等多维度对账,提高财务工作效率,
放款双重审核,安全有保障, 降低管理、运营、产品成本,加快资金流转。
</p>
</div>
</div>
......@@ -271,33 +250,37 @@
fill="#1296db"></path>
</svg>
</p>
<h3 style="padding-bottom: 10px; border-bottom: 1px solid #fff">
<h3 style="padding-bottom: 10px" class="props-item_title">
店铺管理
</h3>
<p style="padding: 10px">
多平台、多店铺统一管理;
<br />
支持多店铺之间导入商品;
<br />
<p class="description">
多平台、多店铺统一管理, 支持多店铺之间导入商品,
支持商品一键发布下架。
</p>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'productIntro',
data() {
return {}
},
}
</script>
<style scoped>
.function_bg {
padding: 20px;
padding: 100px;
text-align: center;
}
.product-pros {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px 16px;
gap: 10px;
}
.product-pros-item {
......@@ -307,10 +290,27 @@
.grid-content {
box-sizing: border-box;
height: 100%;
padding: 30px 10px;
padding: 20px;
border-radius: 8px;
line-height: 30px;
background: url(../assets/bg-1.png) center / cover no-repeat;
display: flex;
flex-direction: column;
align-items: flex-start;
/* background: url(../assets/bg-1.png) center / cover no-repeat; */
box-shadow: 0 0 10px rgb(180 189 221 / 8%), 0 6px 14px hsl(0deg 0% 100% / 30%),
0 12px 20px rgb(180 189 221 / 20%);
}
.description {
font-size: 14px;
color: #666;
text-align: left;
}
.props-item_title {
font-size: 22px;
font-weight: 300;
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}
</style>
......@@ -2,6 +2,10 @@ import Vue from 'vue'
import VueRouter from 'vue-router'
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)
......@@ -16,6 +20,26 @@ const routes = [
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,
}
],
},
......
<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>
</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: 48px;
text-align: center;
color: #fff;
font-weight: bold;
}
.image {
height: 26vw;
}
</style>
<template>
<div class="demand-page">
<div class="header-banner">
<div class="image">
<img
src="../../assets/images/banner-solution.jpg"
style="width: 100%; height: 100%; object-fit: cover" />
</div>
<div class="text">
<h2>痛点需求</h2>
<p>
九猫拥有完整的实施和售后体系,秉承“服务为本,客户至上”的理念竭诚为您服务
</p>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'demandPage',
}
</script>
<style scoped>
.header-banner {
position: relative;
}
.text {
position: absolute;
top: 30%;
left: 5%;
}
.text h2 {
color: #fff;
font-size: 48px;
margin-bottom: 20px;
}
.text p {
color: #fff;
font-size: 24px;
}
.image {
height: 33.33vw;
}
</style>
\ No newline at end of file
<template>
<div class="home-page">
<Head />
<Head :shadow="headerShadow" />
<main class="home-main">
<router-view></router-view>
</main>
<Footer/>
<Footer />
</div>
</template>
<script>
......@@ -16,6 +16,17 @@ import Head from '../components/head.vue'
export default {
name: 'Home',
components: { Head, Footer },
provide() {
return {
scrollParent: () => this.$el,
setHeaderShadow: (shadow) => (this.headerShadow = shadow),
}
},
data() {
return {
headerShadow: true,
}
},
mounted() {
this.$el.addEventListener('scroll', this.onScroll)
},
......@@ -51,11 +62,11 @@ export default {
.home-page.scrolling .header {
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);
}
.home-main {
padding-top: 60px;
/* padding-top: 60px; */
}
</style>
<template>
<div class="home-page">
<div class="banner-images">
<el-carousel class="banner-images-inner" :interval="4000000" height="33.333vw">
<el-carousel
class="banner-images-inner"
:interval="4000000"
height="33.333vw">
<el-carousel-item v-for="(item, index) in bannerImages" :key="index">
<img class="images" :src="item.image" style="width: 100vw"/>
<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>
......@@ -48,4 +74,42 @@ export default {
.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>
<template>
<div class="price-page">
<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>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'pricePage',
}
</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: 48px;
text-align: center;
color: #fff;
font-weight: bold;
}
.image {
height: 26vw;
}
</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