feat: 首页优化,添加开发人员信息

This commit is contained in:
郝先瑞
2022-01-27 23:50:35 +08:00
parent 8a8f44f852
commit fa9de9b2d5
7 changed files with 267 additions and 135 deletions

View File

@@ -0,0 +1,89 @@
<template>
<div class="component-container">
<el-card class="project-card">
<template #header>
<span class="fw-b">有来项目简介</span>
</template>
<div class="project-card__main">
<!-- 项目简介 -->
<el-link target="_blank" type="primary" href="https://gitee.com/haoxr">
youlai-mall
</el-link>
是基于Spring Boot 2.5Spring Cloud 2020 &
Alibaba 2021Vue3Element-Plusuni-app等主流技术栈构建的一整套全栈开源商城项目
涉及
<el-link target="_blank" type="primary" href="https://gitee.com/youlaitech/youlai-mall">后端微服务</el-link>
<el-link target="_blank" type="success" href="https://gitee.com/youlaitech/youlai-mall-admin">前端管理</el-link>
<el-link target="_blank" type="warning" href="https://gitee.com/youlaitech/youlai-mall-weapp">微信小程序
</el-link>
<el-link target="_blank" type="danger" href="https://gitee.com/youlaitech/youlai-mall-weapp">APP应用</el-link>
等多端的开发
<el-divider/>
<!-- 源码地址 -->
<el-row :gutter="10">
<el-col :span="4">
<el-badge value="免费开源" class="fw-b">
源码地址
</el-badge>
</el-col>
<el-col :span="6">
<el-link target="_blank" type="primary" href="https://github.com/youlaitech">Github</el-link>
</el-col>
<el-col :span="14">
<el-link target="_blank" type="success" href="https://gitee.com/youlaiorg">码云</el-link>
</el-col>
</el-row>
<el-divider/>
<!-- 技术栈 -->
<el-row :gutter="10">
<el-col :span="4" class="fw-b">
后端技术栈
</el-col>
<el-col :span="20">
Spring BootSpring Cloud & AlibabaSpring Security
OAuth2SentinelElastic Stack ...
</el-col>
</el-row>
<el-divider/>
<el-row :gutter="10">
<el-col :span="4" class="fw-b">
前端技术栈
</el-col>
<el-col :span="20">
Vue3TypeScriptElement-Plusuni-appvue3-element-admin ...
</el-col>
</el-row>
</div>
</el-card>
</div>
</template>
<script>
export default {
name: "index"
}
</script>
<style lang="scss" scoped>
.component-container {
.project-card {
font-size: 14px;
&__main {
line-height: 28px;
}
}
.fw-b {
font-weight: bold;
}
}
</style>

View File

@@ -0,0 +1,168 @@
<!-- 团队介绍 -->
<template>
<div class="component-container">
<el-card class="team-card">
<template #header>
<span class="fw-b">有来开源组织 & 技术团队 </span>
</template>
<el-tabs v-model="teamActiveName">
<el-tab-pane label="开发者「无回」" name="developer">
<div class="developers">
<ul class="developers__content">
<li class="developer">
<div class="developer__content">
<el-image
class="developer-img"
src="https://gitee.com/haoxr/image/raw/master/hxr.jpg"
:preview-src-list="['https://gitee.com/haoxr/image/raw/master/hxr.jpg']">
</el-image>
<div class="developer-info">
<span class="developer-info-nickname">郝先瑞</span>
<div class="developer-info-position">
<el-tag type="primary" size="mini">后端</el-tag>
<el-tag type="success" class="f-ml" size="mini">前端</el-tag>
<el-tag type="danger" class="f-ml" size="mini">运维</el-tag>
</div>
</div>
</div>
</li>
<li class="developer">
<div class="developer__content">
<el-image
class="developer-img"
src="https://gitee.com/haoxr/image/raw/master/hxr.jpg"
:preview-src-list="['https://gitee.com/haoxr/image/raw/master/hxr.jpg']">
</el-image>
<div class="developer-info">
<span class="developer-info-nickname">XLSS</span>
<div class="developer-info-position">
<el-tag type="primary" class="f-ml" size="mini">DevOps</el-tag>
</div>
</div>
</div>
</li>
<li class="developer">
<div class="developer__content">
<el-image
class="developer-img"
src="https://gitee.com/haoxr/image/raw/master/hxr.jpg"
:preview-src-list="['https://gitee.com/haoxr/image/raw/master/hxr.jpg']">
</el-image>
<div class="developer-info">
<span class="developer-info-nickname">总有刁民要害朕</span>
<div class="developer-info-position">
<el-tag size="mini">后端</el-tag>
<el-tag type="success" class="f-ml" size="mini">前端</el-tag>
</div>
</div>
</div>
</li>
</ul>
</div>
</el-tab-pane>
<el-tab-pane label="交流群「有来」" name="2">
</el-tab-pane>
<el-tab-pane label="加入我们" name="3">
</el-tab-pane>
</el-tabs>
</el-card>
</div>
</template>
<script setup lang="ts">
import {nextTick, onMounted, reactive, toRefs, watchEffect} from "vue";
import BScroll from "better-scroll";
const state = reactive({
teamActiveName: 'developer'
})
const {teamActiveName} = toRefs(state)
let bScroll = reactive({})
onMounted(() => {
bScroll = new BScroll(document.querySelector('.developer-wrapper') as any, {
startX: 0,
click: true,
scrollX: true,
scrollY: false,
eventPassthrough: "vertical" // 横向滚动,保留纵向原生滚动
})
})
watchEffect(() => {
nextTick(() => {
bScroll && (bScroll as any).refresh()
})
})
</script>
<style lang="scss" scoped>
.component-container {
.team-card {
font-size: 14px;
.developers {
width: 100%;
overflow: hidden;
&__content {
display: flex;
justify-content: flex-start;
.developer {
margin-left: 20px;
align-items: center;
list-style: none;
width: 200px;
height: 206px;
&__content {
border: 1px solid #cccccc;
border-radius: 5px;
box-shadow: 10px 10px 5px #CCC;
padding: 23px;
text-align: center;
.developer-img {
height: 100px;
width: 100px;
}
.developer-info {
padding: 6px;
&-nickname {
font-size: 14px;
}
&-position {
margin-top: 5px;
}
}
}
}
}
}
}
.fw-b {
font-weight: bold;
}
.f-ml {
margin-left: 5px;
}
}
</style>

View File

@@ -69,101 +69,12 @@
<!-- 项目介绍 -->
<el-col :sm="24" :lg="12">
<el-card class="project-card">
<template #header>
<span class="fw-b">有来项目简介</span>
</template>
<div class="project-card__main">
<!-- 项目简介 -->
<el-link target="_blank" type="primary" href="https://gitee.com/haoxr">
youlai-mall
</el-link>
是基于Spring Boot 2.5Spring Cloud 2020 &
Alibaba 2021Vue3Element-Plusuni-app等主流技术栈构建的一整套全栈开源商城项目
涉及
<el-link target="_blank" type="primary" href="https://gitee.com/youlaitech/youlai-mall">后端微服务</el-link>
<el-link target="_blank" type="success" href="https://gitee.com/youlaitech/youlai-mall-admin">前端管理</el-link>
<el-link target="_blank" type="warning" href="https://gitee.com/youlaitech/youlai-mall-weapp">微信小程序
</el-link>
<el-link target="_blank" type="danger" href="https://gitee.com/youlaitech/youlai-mall-weapp">APP应用</el-link>
等多端的开发
<el-divider/>
<!-- 源码地址 -->
<el-row :gutter="10">
<el-col :span="4">
<el-badge value="免费开源" class="fw-b">
源码地址
</el-badge>
</el-col>
<el-col :span="4">
<el-link target="_blank" type="primary" href="https://github.com/youlaitech">Github</el-link>
</el-col>
<el-col :span="16">
<el-link target="_blank" type="success" href="https://gitee.com/youlaiorg">码云</el-link>
</el-col>
</el-row>
<el-divider/>
<!-- 技术栈 -->
<el-row :gutter="10">
<el-col :span="4" class="fw-b">
后端技术栈
</el-col>
<el-col :span="20">
Spring BootSpring Cloud & AlibabaSpring Security
OAuth2JWTSeataSentinelElastic Stack ...
</el-col>
</el-row>
<el-divider/>
<el-row :gutter="10">
<el-col :span="4" class="fw-b">
前端技术栈
</el-col>
<el-col :span="20">
Vue3TypeScriptElement-Plusuni-appvue3-element-admin ...
</el-col>
</el-row>
</div>
</el-card>
<Project/>
</el-col>
<!-- 团队介绍 -->
<el-col :sm="24" :lg="12">
<el-card class="team-card">
<template #header>
<span class="fw-b">有来开源组织 X 有来技术团队 </span>
</template>
<el-tabs v-model="teamActiveName">
<el-tab-pane label="开发人员" name="developer">
<div class="developer-wrapper">
<ul class="developer-content">
<li>12</li>
<li>12</li>
<li>123</li>
<li>12</li>
<li>123</li>
<li>33</li>
<li>33</li>
<li>33</li>
<li>33</li>
<li>33</li>
<li>33</li>
<li>33</li>
</ul>
</div>
</el-tab-pane>
<el-tab-pane label="有来交流群" name="2">
</el-tab-pane>
<el-tab-pane label="加入开源组织" name="3">
</el-tab-pane>
</el-tabs>
</el-card>
<Team/>
</el-col>
</el-row>
@@ -197,10 +108,14 @@ import {computed, nextTick, onMounted, reactive, toRefs, watchEffect} from "vue"
import GithubCorner from '@/components/GithubCorner/index.vue'
import TodoList from './components/TodoList/index.vue'
import SvgIcon from '@/components/SvgIcon/index.vue'
import BarChart from "./components/BarChart.vue";
import PieChart from "./components/PieChart.vue";
import RadarChart from "./components/RadarChart.vue";
import FunnelChart from "./components/FunnelChart.vue";
import BarChart from "./components/Chart/BarChart.vue";
import PieChart from "./components/Chart/PieChart.vue";
import RadarChart from "./components/Chart/RadarChart.vue";
import FunnelChart from "./components/Chart/FunnelChart.vue";
import Project from "./components/Project/index.vue";
import Team from "./components/Team/index.vue";
import BScroll from 'better-scroll'
import {useUserStoreHook} from "@/store/modules/user"
@@ -209,29 +124,7 @@ const roles = computed(() => useUserStoreHook().roles);
const avatar = computed(() => useUserStoreHook().avatar);
const nickname = computed(() => useUserStoreHook().nickname);
const state = reactive({
teamActiveName: 'developer'
})
const {teamActiveName} = toRefs(state)
let bScroll = reactive({})
onMounted(() => {
bScroll = new BScroll(document.querySelector('.developer-wrapper') as any, {
startX: 0,
click: true,
scrollX: true,
scrollY: false,
eventPassthrough: "vertical" // 横向滚动,保留纵向原生滚动
})
})
watchEffect(() => {
nextTick(() => {
bScroll && (bScroll as any).refresh()
})
})
</script>
@@ -382,29 +275,11 @@ watchEffect(() => {
}
}
.project-card {
font-size: 14px;
&__main {
line-height: 28px;
}
}
.team-card {
font-size: 14px;
&__main {
line-height: 28px;
}
}
.chart-container {
background: #ffffff;
}
.fw-b {
font-weight: bold;
}
}