Merge branch 'SAP' of http://222.20.126.217:3000/JYHlab_ZLZXB/Situation-Awareness-Platform-Frontend into SAP
This commit is contained in:
@@ -5,10 +5,10 @@ VITE_ENV = 'development'
|
||||
VITE_HOST = 'https://test.gitcode.net'
|
||||
|
||||
# 接口地址
|
||||
VITE_API_HOST = '/'
|
||||
VITE_API_HOST = 'http://222.20.126.217:8100/'
|
||||
|
||||
# devPress接口地址
|
||||
VITE_DEV_API_HOST = '/'
|
||||
VITE_DEV_API_HOST = 'http://222.20.126.217:8100/'
|
||||
|
||||
# devPress地址
|
||||
VITE_DEV_HOST = 'https://test.gitcode.net'
|
||||
|
||||
@@ -5,10 +5,10 @@ VITE_ENV = 'production'
|
||||
VITE_HOST = 'http://222.20.126.217:10010/SAP'
|
||||
|
||||
# 接口地址
|
||||
VITE_API_HOST = '/gateway/official'
|
||||
VITE_API_HOST = 'http://222.20.126.217:8100/'
|
||||
|
||||
# devPress接口地址
|
||||
VITE_DEV_API_HOST = '/gateway/official'
|
||||
VITE_DEV_API_HOST = 'http://222.20.126.217:8100/'
|
||||
|
||||
# devPress地址
|
||||
VITE_DEV_HOST = 'https://gitcode.com'
|
||||
|
||||
142
src/views/Jyh/Community/components/HMStatsBar.vue
Normal file
142
src/views/Jyh/Community/components/HMStatsBar.vue
Normal file
@@ -0,0 +1,142 @@
|
||||
<template>
|
||||
<div class="stats-glass-bar">
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">1000W+</span>
|
||||
<span class="stat-desc">鸿蒙开发者</span>
|
||||
</div>
|
||||
<div class="stat-separator"></div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">60W+</span>
|
||||
<span class="stat-desc">鸿蒙认证开发者</span>
|
||||
</div>
|
||||
<div class="stat-separator"></div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">1W+</span>
|
||||
<span class="stat-desc">武汉鸿蒙认证开发者</span>
|
||||
</div>
|
||||
<div class="stat-separator"></div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">728</span>
|
||||
<span class="stat-desc">鸿蒙开源项目</span>
|
||||
</div>
|
||||
<div class="stat-separator"></div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">600+</span>
|
||||
<span class="stat-desc">鸿蒙开源企业</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "StatsBar"
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.stats-glass-bar {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
||||
/* 布局控制:撑满容器并增加内边距 */
|
||||
width: 100%;
|
||||
padding: 2rem 4rem;
|
||||
margin: 0 0 1rem;
|
||||
|
||||
/* 深色玻璃拟态背景 */
|
||||
background: rgba(255, 255, 255, 0.02);
|
||||
backdrop-filter: blur(20px);
|
||||
-webkit-backdrop-filter: blur(20px);
|
||||
|
||||
/* 极细微的边框勾勒 */
|
||||
border-radius: 1rem;
|
||||
border: 1px solid rgba(255, 255, 255, 0.08);
|
||||
|
||||
/* 外阴影与内发光,增加悬浮感 */
|
||||
box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3),
|
||||
inset 0 0 20px rgba(255, 255, 255, 0.02);
|
||||
|
||||
transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
|
||||
&:hover {
|
||||
border-color: rgba(56, 189, 248, 0.4);
|
||||
background: rgba(255, 255, 255, 0.04);
|
||||
transform: translateY(-2px);
|
||||
}
|
||||
}
|
||||
|
||||
.stat-node {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 0.75rem;
|
||||
transition: transform 0.3s ease;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
.stat-value {
|
||||
text-shadow: 0 0 25px rgba(56, 189, 248, 0.8);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.stat-value {
|
||||
/* 科技感亮蓝渐变 */
|
||||
font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
|
||||
font-size: 2.25rem;
|
||||
font-weight: 800;
|
||||
background: linear-gradient(180deg, #fff 0%, #38bdf8 100%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
|
||||
/* 基础发光效果 */
|
||||
filter: drop-shadow(0 0 10px rgba(56, 189, 248, 0.3));
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
.stat-desc {
|
||||
/* 在黑底上使用半透明白色,更有高级感 */
|
||||
color: rgba(255, 255, 255, 0.6);
|
||||
font-size: 0.875rem;
|
||||
font-weight: 500;
|
||||
letter-spacing: 0.1rem;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.stat-separator {
|
||||
/* 渐隐分割线 */
|
||||
width: 1px;
|
||||
height: 3rem;
|
||||
background: linear-gradient(
|
||||
to bottom,
|
||||
rgba(255, 255, 255, 0),
|
||||
rgba(255, 255, 255, 0.2),
|
||||
rgba(255, 255, 255, 0)
|
||||
);
|
||||
margin: 0 1rem;
|
||||
}
|
||||
|
||||
/* 响应式适配 */
|
||||
@media (max-width: 1024px) {
|
||||
.stats-glass-bar {
|
||||
padding: 2rem;
|
||||
}
|
||||
.stat-value {
|
||||
font-size: 1.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.stats-glass-bar {
|
||||
flex-direction: column;
|
||||
gap: 2rem;
|
||||
}
|
||||
.stat-separator {
|
||||
width: 50%;
|
||||
height: 1px;
|
||||
background: linear-gradient(to right, transparent, rgba(255,255,255,0.2), transparent);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -2,9 +2,12 @@
|
||||
<div class="index-module__NV_5cW__chartsSection" style="margin-bottom: 20px">
|
||||
<div class="index-module__NV_5cW__sectionHeader">
|
||||
<h2 class="index-module__NV_5cW__sectionTitle">
|
||||
<span class="hm-tag-icon">HarmonyOS</span> 鸿蒙生态数据可视化
|
||||
<span class="hm-tag-icon">OpenHarmony</span> 开源鸿蒙态势分析
|
||||
</h2>
|
||||
</div>
|
||||
<div class="index-module__NV_5cW__sectionHeader">
|
||||
<HMStatsBar />
|
||||
</div>
|
||||
<div class="index-module__NV_5cW__chartsGrid">
|
||||
|
||||
<div class="index-module__NV_5cW__chartCard list-card">
|
||||
@@ -334,6 +337,7 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, nextTick, onUnmounted } from 'vue';
|
||||
import * as echarts from 'echarts';
|
||||
import HMStatsBar from './HMStatsBar.vue';
|
||||
|
||||
// ================= 数据定义 =================
|
||||
const hmCityData = [
|
||||
|
||||
@@ -1,14 +1,5 @@
|
||||
<template>
|
||||
<div class="stats-glass-bar">
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">60W+</span>
|
||||
<span class="stat-desc">全国鸿蒙认证开发者</span>
|
||||
</div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">1W+</span>
|
||||
<span class="stat-desc">武汉鸿蒙认证开发者</span>
|
||||
</div>
|
||||
<div class="stat-separator"></div>
|
||||
<div class="stat-node">
|
||||
<span class="stat-value">150+</span>
|
||||
<span class="stat-desc">武汉开源企业</span>
|
||||
@@ -46,7 +37,7 @@ name: "StatsBar"
|
||||
/* 布局控制:撑满容器并增加内边距 */
|
||||
width: 100%;
|
||||
padding: 2rem 4rem;
|
||||
//margin: 2rem 0;
|
||||
margin: 0 0 1rem;
|
||||
|
||||
/* 深色玻璃拟态背景 */
|
||||
background: rgba(255, 255, 255, 0.02);
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
汇聚武汉开源力量,共建城市开源生态
|
||||
</p>
|
||||
</div>
|
||||
<StatsBar />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -30,9 +29,12 @@
|
||||
class="lucide lucide-activity" aria-hidden="true">
|
||||
<path d="M22 12h-4l-3 9L9 3l-3 9H2" />
|
||||
</svg>
|
||||
<span>武汉开源生态数据可视化</span>
|
||||
<span>武汉开源生态建设总览</span>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="index-module__NV_5cW__sectionHeader">
|
||||
<StatsBar />
|
||||
</div>
|
||||
|
||||
<div class="index-module__NV_5cW__chartsGrid">
|
||||
|
||||
@@ -1363,4 +1365,8 @@ onUnmounted(() => {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
|
||||
.index-module__NV_5cW__chartsSection {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user