整理文件
This commit is contained in:
parent
84d0bfe9f9
commit
d52ae93d3f
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
@ -1,14 +0,0 @@
|
|||||||
|
|
||||||
<template>
|
|
||||||
<div style="display: flex; background-color: #74abe3; height: 70px; width: auto; position: relative; justify-content: flex-end; padding: 0 20px;">
|
|
||||||
<a-button ghost style="border: none; font-size: 25px; font-weight: bold; display: flex; position: absolute; top: 20%; left: 20px;" @click="">LOGO</a-button>
|
|
||||||
<div style="display: flex; position: absolute; right: 20px; top: 50%; transform: translateY(-50%)">
|
|
||||||
<a-button style="color: white" type="text" @click="$router.push('/login')">登录</a-button>
|
|
||||||
<a-button style="color: white" type="text" @click="$router.push('/register')">注册</a-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script setup>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
BIN
src/assert/images/img1.jpg
Normal file
BIN
src/assert/images/img1.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 225 KiB |
52
src/components/HomeComponents/Carousel.vue
Normal file
52
src/components/HomeComponents/Carousel.vue
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
<template>
|
||||||
|
<div id="controls-carousel" class="w-full relative" data-carousel="slide">
|
||||||
|
<!-- Carousel wrapper -->
|
||||||
|
<div class="relative h-56 overflow-hidden md:h-[600px]">
|
||||||
|
<!-- Item 1 -->
|
||||||
|
<div class="hidden duration-700 ease-in-out" data-carousel-item>
|
||||||
|
<img alt="..." class="absolute block w-full -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2" src="../../assert/images/img1.jpg">
|
||||||
|
</div>
|
||||||
|
<!-- Item 2 -->
|
||||||
|
<div class="hidden duration-700 ease-in-out" data-carousel-item="active">
|
||||||
|
<img alt="..." class="absolute block w-full -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2" src="../../assert/images/img2.jpg">
|
||||||
|
</div>
|
||||||
|
<!-- Item 3 -->
|
||||||
|
<div class="hidden duration-700 ease-in-out" data-carousel-item>
|
||||||
|
<img alt="..." class="absolute block w-full -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2" src="../../assert/images/img3.jpg">
|
||||||
|
</div>
|
||||||
|
<!-- Item 4 -->
|
||||||
|
<div class="hidden duration-700 ease-in-out" data-carousel-item>
|
||||||
|
<img alt="..." class="absolute block w-full -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2" src="../../assert/images/img11.jpg">
|
||||||
|
</div>
|
||||||
|
<!-- Item 5 -->
|
||||||
|
<div class="hidden duration-700 ease-in-out" data-carousel-item>
|
||||||
|
<img alt="..." class="absolute block w-full -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2" src="../../assert/images/img19.jpg">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Slider indicators -->
|
||||||
|
<div class="absolute z-30 flex -translate-x-1/2 bottom-5 left-1/2 space-x-3 rtl:space-x-reverse">
|
||||||
|
<button aria-current="true" aria-label="Slide 1" class="w-3 h-3 rounded-full" data-carousel-slide-to="0" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 2" class="w-3 h-3 rounded-full" data-carousel-slide-to="1" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 3" class="w-3 h-3 rounded-full" data-carousel-slide-to="2" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 4" class="w-3 h-3 rounded-full" data-carousel-slide-to="3" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 5" class="w-3 h-3 rounded-full" data-carousel-slide-to="4" type="button"></button>
|
||||||
|
</div>
|
||||||
|
<!-- Slider controls -->
|
||||||
|
<button class="absolute top-0 start-0 z-30 flex items-center justify-center h-full px-4 cursor-pointer group focus:outline-none" data-carousel-prev type="button">
|
||||||
|
<span class="inline-flex items-center justify-center w-10 h-10 rounded-full bg-white/30 dark:bg-gray-800/30 group-hover:bg-white/50 dark:group-hover:bg-gray-800/60 group-focus:ring-4 group-focus:ring-white dark:group-focus:ring-gray-800/70 group-focus:outline-none">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-white dark:text-gray-800 rtl:rotate-180" fill="none" viewBox="0 0 6 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M5 1 1 5l4 4" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
<span class="sr-only">Previous</span>
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
|
<button class="absolute top-0 end-0 z-30 flex items-center justify-center h-full px-4 cursor-pointer group focus:outline-none" data-carousel-next type="button">
|
||||||
|
<span class="inline-flex items-center justify-center w-10 h-10 rounded-full bg-white/30 dark:bg-gray-800/30 group-hover:bg-white/50 dark:group-hover:bg-gray-800/60 group-focus:ring-4 group-focus:ring-white dark:group-focus:ring-gray-800/70 group-focus:outline-none">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-white dark:text-gray-800 rtl:rotate-180" fill="none" viewBox="0 0 6 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="m1 9 4-4-4-4" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
<span class="sr-only">Next</span>
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</template>
|
64
src/components/HomeComponents/ExcellentMember.vue
Normal file
64
src/components/HomeComponents/ExcellentMember.vue
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<template>
|
||||||
|
<div id="default-carousel" class="mt-40 relative w-full" data-carousel="slide">
|
||||||
|
<!-- Carousel wrapper -->
|
||||||
|
<div class="relative overflow-hidden h-[600px]">
|
||||||
|
<!-- Item 1 -->
|
||||||
|
<div class="text-white hidden duration-700 ease-in-out bg-green-400 flex flex-col justify-center items-center" data-carousel-item>
|
||||||
|
<img alt="Bordered avatar" class="w-20 h-20 p-1 rounded-full ring-2 ring-gray-300 dark:ring-gray-500" src="../../assert/images/img4.jpg">
|
||||||
|
<p class="m-3">姓名</p>
|
||||||
|
<p>简介</p>
|
||||||
|
</div>
|
||||||
|
<!-- Item 2 -->
|
||||||
|
<div class="text-white hidden duration-700 ease-in-out bg-green-400 flex flex-col justify-center items-center" data-carousel-item>
|
||||||
|
<img alt="Bordered avatar" class="w-20 h-20 p-1 rounded-full ring-2 ring-gray-300 dark:ring-gray-500" src="../../assert/images/img5.jpg">
|
||||||
|
<p class="m-3">姓名</p>
|
||||||
|
<p>简介</p>
|
||||||
|
</div>
|
||||||
|
<!-- Item 3 -->
|
||||||
|
<div class="text-white hidden duration-700 ease-in-out bg-green-400 flex flex-col justify-center items-center" data-carousel-item>
|
||||||
|
<img alt="Bordered avatar" class="w-20 h-20 p-1 rounded-full ring-2 ring-gray-300 dark:ring-gray-500" src="../../assert/images/img6.jpg">
|
||||||
|
<p class="m-3">姓名</p>
|
||||||
|
<p>简介</p>
|
||||||
|
</div>
|
||||||
|
<!-- Item 4 -->
|
||||||
|
<div class=" text-white duration-700 ease-in-out bg-green-400 flex flex-col justify-center items-center" data-carousel-item>
|
||||||
|
<img alt="Bordered avatar" class="w-20 h-20 p-1 rounded-full ring-2 ring-gray-300 dark:ring-gray-500" src="../../assert/images/img7.jpg">
|
||||||
|
<p class="m-3">姓名</p>
|
||||||
|
<p>简介</p>
|
||||||
|
</div>
|
||||||
|
<!-- Item 5 -->
|
||||||
|
<div class="text-white duration-700 ease-in-out bg-green-400 flex flex-col justify-center items-center" data-carousel-item>
|
||||||
|
<img alt="Bordered avatar" class="w-20 h-20 p-1 rounded-full ring-2 ring-gray-300 dark:ring-gray-500" src="../../assert/images/img8.jpg">
|
||||||
|
<p class="m-3">姓名</p>
|
||||||
|
<p>简介</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Slider indicators -->
|
||||||
|
<div class="absolute z-30 flex -translate-x-1/2 bottom-5 left-1/2 space-x-3 rtl:space-x-reverse">
|
||||||
|
<button aria-current="true" aria-label="Slide 1" class="w-3 h-3 rounded-full" data-carousel-slide-to="0" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 2" class="w-3 h-3 rounded-full" data-carousel-slide-to="1" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 3" class="w-3 h-3 rounded-full" data-carousel-slide-to="2" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 4" class="w-3 h-3 rounded-full" data-carousel-slide-to="3" type="button"></button>
|
||||||
|
<button aria-current="false" aria-label="Slide 5" class="w-3 h-3 rounded-full" data-carousel-slide-to="4" type="button"></button>
|
||||||
|
</div>
|
||||||
|
<!-- Slider controls -->
|
||||||
|
<button class="absolute top-0 start-0 z-30 flex items-center justify-center h-full px-4 cursor-pointer group focus:outline-none" data-carousel-prev type="button">
|
||||||
|
<span class="inline-flex items-center justify-center w-10 h-10 rounded-full bg-white/30 dark:bg-gray-800/30 group-hover:bg-white/50 dark:group-hover:bg-gray-800/60 group-focus:ring-4 group-focus:ring-white dark:group-focus:ring-gray-800/70 group-focus:outline-none">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-white dark:text-gray-800 rtl:rotate-180" fill="none" viewBox="0 0 6 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M5 1 1 5l4 4" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
<span class="sr-only">Previous</span>
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
|
<button class="absolute top-0 end-0 z-30 flex items-center justify-center h-full px-4 cursor-pointer group focus:outline-none" data-carousel-next type="button">
|
||||||
|
<span class="inline-flex items-center justify-center w-10 h-10 rounded-full bg-white/30 dark:bg-gray-800/30 group-hover:bg-white/50 dark:group-hover:bg-gray-800/60 group-focus:ring-4 group-focus:ring-white dark:group-focus:ring-gray-800/70 group-focus:outline-none">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-white dark:text-gray-800 rtl:rotate-180" fill="none" viewBox="0 0 6 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="m1 9 4-4-4-4" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
<span class="sr-only">Next</span>
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
</script>
|
18
src/components/HomeComponents/Icp.vue
Normal file
18
src/components/HomeComponents/Icp.vue
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<!--版权-->
|
||||||
|
<div class="w-full h-12 flex items-center justify-center bg-gray-700 text-gray-400">
|
||||||
|
<div class="flex space-x-10">
|
||||||
|
<div>
|
||||||
|
ICP备案
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
公安备案
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
Copyright (C) 2023 xxx Group All Right Services.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
</script>
|
36
src/components/HomeComponents/More.vue
Normal file
36
src/components/HomeComponents/More.vue
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<template>
|
||||||
|
<div class="w-full bg-gray-700 h-[400px] flex space-x-96 text-white">
|
||||||
|
<div class="mt-[6%] ml-[12%] text-2xl">
|
||||||
|
联系
|
||||||
|
</div>
|
||||||
|
<div class="mt-[6%] flex flex-col space-y-14">
|
||||||
|
<div class="text-xl">
|
||||||
|
无锡学院-职业技术学院联合
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col space-y-6">
|
||||||
|
<p class="">
|
||||||
|
地址
|
||||||
|
</p>
|
||||||
|
<p class="">
|
||||||
|
电话
|
||||||
|
</p>
|
||||||
|
<p class="">
|
||||||
|
传真
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col space-y-6 mt-[11%]">
|
||||||
|
<p class="">
|
||||||
|
邮编
|
||||||
|
</p>
|
||||||
|
<p class="">
|
||||||
|
手机
|
||||||
|
</p>
|
||||||
|
<p class="">
|
||||||
|
邮箱
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
</script>
|
84
src/components/HomeComponents/NavBar.vue
Normal file
84
src/components/HomeComponents/NavBar.vue
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
<template>
|
||||||
|
<nav class="text-base z-50 sticky top-0 bg-white border-gray-200">
|
||||||
|
<div class="max-w-screen-xl flex flex-wrap items-center justify-between mx-auto p-4">
|
||||||
|
<a class="flex items-center space-x-3 rtl:space-x-reverse" href="/src/js">
|
||||||
|
<span class="self-center text-2xl font-semibold whitespace-nowrap">LOGO</span>
|
||||||
|
</a>
|
||||||
|
<button aria-controls="navbar-dropdown" aria-expanded="false" class="inline-flex items-center p-2 w-10 h-10 justify-center text-sm text-gray-500 rounded-lg md:hidden hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-200" data-collapse-toggle="navbar-dropdown" type="button">
|
||||||
|
<span class="sr-only">Open main menu</span>
|
||||||
|
<svg aria-hidden="true" class="w-5 h-5" fill="none" viewBox="0 0 17 14" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 1h15M1 7h15M1 13h15" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
<div class="flex md:order-2 md:space-x-0 rtl:space-x-reverse">
|
||||||
|
<a class="text-black focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-center" href="/login">
|
||||||
|
登录 |
|
||||||
|
</a>
|
||||||
|
<a class="text-black focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg pl-2 text-center" href="/register">
|
||||||
|
注册
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div id="navbar-dropdown" class="w-full md:block md:w-auto">
|
||||||
|
<ul class="flex flex-col font-medium p-4 md:p-0 mt-4 border border-gray-100 rounded-lg bg-gray-50 md:space-x-8 rtl:space-x-reverse md:flex-row md:mt-0 md:border-0 md:bg-white">
|
||||||
|
<li>
|
||||||
|
<a aria-current="page" class="block py-2 px-3 text-white bg-blue-700 rounded md:bg-transparent md:text-blue-500 md:p-0" href="/src/js">
|
||||||
|
首页
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0" href="/Project" @click="changeColor">
|
||||||
|
项目
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li class="relative">
|
||||||
|
<button id="dropdownNavbarLink" class="flex items-center justify-between w-full py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0 md:w-auto" data-dropdown-toggle="dropdownNavbar" @click="toggleDropdown()">
|
||||||
|
关于
|
||||||
|
<svg aria-hidden="true" class="w-2.5 h-2.5 ms-2.5" fill="none" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="m1 1 4 4 4-4" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
<!-- Dropdown menu -->
|
||||||
|
<div v-if="isDropdownOpen" id="dropdownNavbar" class="absolute font-normal bg-white divide-y divide-gray-100 rounded-lg shadow w-44">
|
||||||
|
<ul aria-labelledby="dropdownLargeButton" class="py-2 text-sm text-gray-700 dark:text-gray-400">
|
||||||
|
<li>
|
||||||
|
<a class="block px-4 py-2 hover:bg-gray-100" href="#">关于我们</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="block px-4 py-2 hover:bg-gray-100" href="#">加入我们</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="block px-4 py-2 hover:bg-gray-100" href="#">项目合作</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0" href="#">团队</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0" href="/New">新闻</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
isDropdownOpen: false,
|
||||||
|
textColor: 'black',
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toggleDropdown() {
|
||||||
|
this.isDropdownOpen = !this.isDropdownOpen;
|
||||||
|
},
|
||||||
|
changeColor() {
|
||||||
|
// 当按钮被点击时,将文字颜色改为蓝色
|
||||||
|
this.textColor = 'blue';
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
114
src/components/HomeComponents/NewProfile.vue
Normal file
114
src/components/HomeComponents/NewProfile.vue
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
<template>
|
||||||
|
<div class="mt-40 w-full">
|
||||||
|
<div class="md:container mx-auto md:w-3/4">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<h2 class="text-3xl font-bold dark:text-white">新闻</h2>
|
||||||
|
<div class="ml-auto" @mouseleave="LearnMore8=false" @mouseover="LearnMore8=true">
|
||||||
|
<button :class="{'bg-green-400':LearnMore8}" class="transition duration-300 ease-in-out transform hover:scale-105 border-gray-200 border-2 h-8 w-14 rounded-full flex justify-center items-center">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-gray-400 dark:text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mx-auto mt-24 flex flex-col space-y-8">
|
||||||
|
<div class="flex space-x-12">
|
||||||
|
<div :class="{'hover:bg-green-400':showMoreButton1}" class="flex-1 transition-transform transform-gpu hover:scale-105 relative sm:w-1/2 md:w-1/4 lg:w-1/3 xl:w-1/4 h-[500px] bg-white border border-gray-200 shadow"
|
||||||
|
@mouseleave="showMoreButton1=false"
|
||||||
|
@mouseover="showMoreButton1=true"
|
||||||
|
>
|
||||||
|
<div>
|
||||||
|
<p :class="{'text-white':showMoreButton1}" class="pl-5 mt-6 truncate text-xl sm:text-base md:text-lg lg:text-xl font-bold tracking-tight text-gray-700 dark:text-white">张三老师发布了:</p>
|
||||||
|
<p :class="{'text-white':showMoreButton1}" class="flex justify-center mt-10 mb-3 font-normal text-lg text-gray-700 dark:text-gray-400">梁溪区纪委大数据管理平台项目</p>
|
||||||
|
<p class="ml-4 mr-4">主要针对大量数据进行处理,需要大量数据,前后端配合需要的技术有:springboot,vue,mysql等</p>
|
||||||
|
<div :class="{'bg-white':showMoreButton1}" class="absolute bottom-0 w-full h-[20%] bg-gray-100 mt-[200px] flex sm:text-base md:text-lg lg:text-xl">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div :class="{'text-green-400':showMoreButton1}" class="ml-6 mt-4 font-semibold text-3xl">
|
||||||
|
01-17
|
||||||
|
</div>
|
||||||
|
<div :class="{'text-green-400':showMoreButton1}" class="ml-6 text-lg">
|
||||||
|
2024
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mt-10 ml-auto mr-10">
|
||||||
|
<a v-if="showMoreButton1" class="inline-flex items-center text-sm font-medium text-center text-white bg-green-400 rounded-full" href="#">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 m-1" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div :class="{'hover:bg-green-400':showMoreButton2}" class="flex-1 transition-transform transform-gpu hover:scale-105 relative sm:w-1/2 md:w-1/4 lg:w-1/3 xl:w-1/4 h-[500px] bg-white border border-gray-200 shadow"
|
||||||
|
@mouseleave="showMoreButton2=false"
|
||||||
|
@mouseover="showMoreButton2=true"
|
||||||
|
>
|
||||||
|
<div class="">
|
||||||
|
<p :class="{'text-white':showMoreButton2}" class="pl-5 mt-6 truncate text-xl sm:text-base md:text-lg lg:text-xl font-bold tracking-tight text-gray-700 dark:text-white">张三老师发布了:</p>
|
||||||
|
<p :class="{'text-white':showMoreButton2}" class="flex justify-center mt-10 mb-3 font-normal text-lg text-gray-700 dark:text-gray-400">梁溪区纪委大数据管理平台项目</p>
|
||||||
|
<p class="ml-4 mr-4">主要针对大量数据进行处理,需要大量数据,前后端配合需要的技术有:springboot,vue,mysql等</p>
|
||||||
|
<div :class="{'bg-white':showMoreButton2}" class="absolute bottom-0 w-full h-[20%] bg-gray-100 mt-[200px] flex">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div :class="{'text-green-400':showMoreButton2}" class="ml-6 mt-4 font-semibold text-3xl">
|
||||||
|
01-17
|
||||||
|
</div>
|
||||||
|
<div :class="{'text-green-400':showMoreButton2}" class="ml-6 text-lg">
|
||||||
|
2024
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mt-10 ml-auto mr-10">
|
||||||
|
<a v-if="showMoreButton2" class="inline-flex items-center text-sm font-medium text-center text-white bg-green-400 rounded-full" href="#">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 m-1" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div :class="{'hover:bg-green-400':showMoreButton3}" class="flex-1 transition-transform transform-gpu hover:scale-105 hover:bg-green-400 relative sm:w-1/2 md:w-1/4 lg:w-1/3 xl:w-1/4 h-[500px] bg-white border border-gray-200 shadow"
|
||||||
|
@mouseleave="showMoreButton3=false"
|
||||||
|
@mouseover="showMoreButton3=true"
|
||||||
|
>
|
||||||
|
<div class="">
|
||||||
|
<p :class="{'text-white':showMoreButton3}" class="pl-5 mt-6 truncate text-xl sm:text-base md:text-lg lg:text-xl font-bold tracking-tight text-gray-700 dark:text-white">张三老师发布了:</p>
|
||||||
|
<p :class="{'text-white':showMoreButton3}" class="flex justify-center mt-10 mb-3 font-normal text-lg text-gray-700 dark:text-gray-400">梁溪区纪委大数据管理平台项目</p>
|
||||||
|
<p class="ml-4 mr-4">主要针对大量数据进行处理,需要大量数据,前后端配合需要的技术有:springboot,vue,mysql等</p>
|
||||||
|
<div :class="{'bg-white':showMoreButton3}" class="absolute bottom-0 w-full h-[20%] bg-gray-100 mt-[200px] flex">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div :class="{'text-green-400':showMoreButton3}" class="ml-6 mt-4 font-semibold text-3xl">
|
||||||
|
01-17
|
||||||
|
</div>
|
||||||
|
<div :class="{'text-green-400':showMoreButton3}" class="ml-6 text-lg">
|
||||||
|
2024
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mt-10 ml-auto mr-10">
|
||||||
|
<a v-if="showMoreButton3" class="inline-flex items-center text-sm font-medium text-center text-white bg-green-400 rounded-full" href="#">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 m-1" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data(){
|
||||||
|
return{
|
||||||
|
showMoreButton1:false,
|
||||||
|
showMoreButton2:false,
|
||||||
|
showMoreButton3:false,
|
||||||
|
LearnMore8:false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
124
src/components/HomeComponents/ProjectList.vue
Normal file
124
src/components/HomeComponents/ProjectList.vue
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
<template>
|
||||||
|
<div class="mt-40 w-full">
|
||||||
|
<div class="container mx-auto md:w-3/4">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<h2 class="text-3xl font-bold">项目展示</h2>
|
||||||
|
<div class="ml-auto" @mouseleave="LearnMore0=false" @mouseover="LearnMore0=true">
|
||||||
|
<button :class="{'bg-green-400':LearnMore0}" class="transition duration-300 ease-in-out transform hover:scale-105 border-gray-200 border-2 h-8 w-14 rounded-full flex justify-center items-center">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-gray-400 dark:text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mx-auto mt-24 flex flex-col space-y-8">
|
||||||
|
<div class="flex space-x-12">
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 w-1/4 bg-cover bg-center bg-[url('@/assert/images/img27.jpg')]" @mouseleave="LearnMore1=false" @mouseover="LearnMore1=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore1}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore1" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900">项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore1" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 w-1/4 bg-cover bg-center bg-[url('@/assert/images/img22.jpg')]" @mouseleave="LearnMore2=false" @mouseover="LearnMore2=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore2}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore2" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900">项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore2" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 w-1/4 bg-cover bg-center bg-[url('@/assert/images/img23.jpg')]" @mouseleave="LearnMore3=false" @mouseover="LearnMore3=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore3}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore3" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900 dark:text-white">项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore3" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex space-x-12">
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 w-1/4 bg-cover bg-center bg-[url('@/assert/images/img24.jpg')]" @mouseleave="LearnMore4=false" @mouseover="LearnMore4=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore4}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore4" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900 dark:text-white">项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore4" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 w-1/4 bg-center bg-[url('@/assert/images/img25.jpg')]" @mouseleave="LearnMore5=false" @mouseover="LearnMore5=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore5}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore5" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900 dark:text-white">项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore5" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-1 relative transition-transform transform-gpu hover:scale-105 border-gray-400 shadow-lg h-80 bg-cover bg-center bg-[url('@/assert/images/img26.jpg')]" @mouseleave="LearnMore6=false" @mouseover="LearnMore6=true">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div :class="{'bg-white':LearnMore6}" class="flex absolute bottom-0 min-h-[30%] w-full">
|
||||||
|
<h5 v-if="LearnMore6" class="ml-8 mt-6 text-2xl font-bold tracking-tight text-gray-900 dark:text-white"> 项目标题</h5>
|
||||||
|
<div class="ml-auto mr-10">
|
||||||
|
<button v-if="LearnMore6" class="mt-8 w-6 h-6 flex items-center justify-center bg-green-400 text-black rounded-full transition duration-300 ease-in-out transform hover:scale-105">
|
||||||
|
<svg aria-hidden="true" class="rtl:rotate-180 w-4 h-4 text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
LearnMore0:false,
|
||||||
|
LearnMore1:false,
|
||||||
|
LearnMore2:false,
|
||||||
|
LearnMore3:false,
|
||||||
|
LearnMore4:false,
|
||||||
|
LearnMore5:false,
|
||||||
|
LearnMore6:false,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
35
src/components/HomeComponents/TeamProfile.vue
Normal file
35
src/components/HomeComponents/TeamProfile.vue
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<template>
|
||||||
|
<div class="w-full mt-40">
|
||||||
|
<div class="md:container md:w-3/4 mx-auto">
|
||||||
|
<div class="flex">
|
||||||
|
<h2 class="text-3xl font-bold mb-6">
|
||||||
|
关于
|
||||||
|
</h2>
|
||||||
|
<div class="ml-auto" @mouseleave="LearnMore7=false" @mouseover="LearnMore7=true">
|
||||||
|
<button :class="{'bg-green-400':LearnMore7}" class="transition duration-300 ease-in-out transform hover:scale-105 border-gray-200 border-2 h-8 w-14 rounded-full flex justify-center items-center">
|
||||||
|
<svg aria-hidden="true" class="w-4 h-4 text-gray-400 dark:text-white" fill="none" viewBox="0 0 14 10" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1 5h12m0 0L9 1m4 4L9 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mt-16 flex space-x-5">
|
||||||
|
<div class="flex-1 h-96 w-1/2">
|
||||||
|
团队介绍
|
||||||
|
</div>
|
||||||
|
<div class="flex-1 mb-40 h-96 w-1/2 bg-white shadow-lg" role="status">
|
||||||
|
<img alt="" src="../../assert/images/img15.jpg">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data(){
|
||||||
|
return{
|
||||||
|
LearnMore7:false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
@ -14,8 +14,9 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import {h, reactive} from 'vue';
|
import {h, reactive} from 'vue';
|
||||||
import { MailOutlined, AppstoreOutlined, SettingOutlined } from '@ant-design/icons-vue';
|
import {AppstoreOutlined, MailOutlined, SettingOutlined} from '@ant-design/icons-vue';
|
||||||
import { useRoute, useRouter } from 'vue-router';
|
import {useRouter} from 'vue-router';
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
||||||
function getItem(label, key, icon, children, type) {
|
function getItem(label, key, icon, children, type) {
|
@ -5,5 +5,5 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import LeftBar from "@/Manager/LeftBar.vue";
|
import LeftBar from "@/components/ManageComponents/LeftBar.vue";
|
||||||
</script>
|
</script>
|
@ -1,5 +1,5 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import getCurrentTimestamp from "@/public/methods.js";
|
import getCurrentTimestamp from "@/js/methods.js";
|
||||||
|
|
||||||
const api = 'http://nbxt.oa.x-lf.cn'
|
const api = 'http://nbxt.oa.x-lf.cn'
|
||||||
|
|
@ -3,7 +3,8 @@ import Antd from 'ant-design-vue';
|
|||||||
import App from './App.vue'
|
import App from './App.vue'
|
||||||
import router from './router'
|
import router from './router'
|
||||||
import 'ant-design-vue/dist/reset.css';
|
import 'ant-design-vue/dist/reset.css';
|
||||||
import './index.css'
|
import './assert/main.css'
|
||||||
|
import 'flowbite';
|
||||||
|
|
||||||
const app = createApp(App)
|
const app = createApp(App)
|
||||||
|
|
||||||
|
@ -6,82 +6,82 @@ const router = createRouter({
|
|||||||
{
|
{
|
||||||
path:'/',
|
path:'/',
|
||||||
name:'app',
|
name:'app',
|
||||||
component:()=>import('../MainPage/Index.vue')
|
component:()=>import('../views/HomePage/IndexView.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/login',
|
path:'/login',
|
||||||
name:'login',
|
name:'login',
|
||||||
component:()=>import('@/LoginRegister/Login.vue')
|
component:()=>import('@/views/AuthPage/Login.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/register',
|
path:'/register',
|
||||||
name:'register',
|
name:'register',
|
||||||
component:()=>import('../LoginRegister/Register.vue')
|
component:()=>import('../views/AuthPage/Register.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager',
|
path:'/Manager',
|
||||||
name:'Manager',
|
name:'Manager',
|
||||||
component:()=>import('../Manager/Manager.vue'),
|
component:()=>import('@/views/ManagePage/Manager.vue'),
|
||||||
children:[
|
children:[
|
||||||
{
|
{
|
||||||
path:'/Manager/Main',
|
path:'/Manager/Main',
|
||||||
component:() =>import('@/Manager/components/Main.vue')
|
component:() =>import('@/views/ManagePage/Main.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/User',
|
path:'/Manager/User',
|
||||||
component:() =>import('@/Manager/components/User.vue')
|
component:() =>import('@/views/ManagePage/User.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Role',
|
path:'/Manager/Role',
|
||||||
component:() =>import('@/Manager/components/Role.vue')
|
component:() =>import('@/views/ManagePage/Role.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Authority',
|
path:'/Manager/Authority',
|
||||||
component:() =>import('@/Manager/components/Authority.vue')
|
component:() =>import('@/views/ManagePage/Authority.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Log',
|
path:'/Manager/Log',
|
||||||
component:() =>import('@/Manager/components/Log.vue')
|
component:() =>import('@/views/ManagePage/Log.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Daily',
|
path:'/Manager/Daily',
|
||||||
component:() =>import('@/Manager/components/Daily.vue')
|
component:() =>import('@/views/ManagePage/Daily.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Message',
|
path:'/Manager/Message',
|
||||||
component:() =>import('@/Manager/components/Message.vue')
|
component:() =>import('@/views/ManagePage/Message.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path:'/Manager/Carousel',
|
path:'/Manager/Carousel',
|
||||||
component:() =>import('@/Manager/components/Carousel.vue')
|
component:() =>import('@/views/ManagePage/Carousel.vue')
|
||||||
} ,{
|
} ,{
|
||||||
path:'/Manager/TeamProfile',
|
path:'/Manager/TeamProfile',
|
||||||
component:() =>import('@/Manager/components/TeamProfile.vue')
|
component:() =>import('@/views/ManagePage/TeamProfile.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/ProjectRecommend',
|
path:'/Manager/ProjectRecommend',
|
||||||
component:() =>import('@/Manager/components/ProjectRecommend.vue')
|
component:() =>import('@/views/ManagePage/ProjectRecommend.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/NewsDisplay',
|
path:'/Manager/NewsDisplay',
|
||||||
component:() =>import('@/Manager/components/NewsDisplay.vue')
|
component:() =>import('@/views/ManagePage/NewsDisplay.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/UserRecommend',
|
path:'/Manager/UserRecommend',
|
||||||
component:() =>import('@/Manager/components/UserRecommend.vue')
|
component:() =>import('@/views/ManagePage/UserRecommend.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/ProjectInformation',
|
path:'/Manager/ProjectInformation',
|
||||||
component:() =>import('@/Manager/components/ProjectInformation.vue')
|
component:() =>import('@/views/ManagePage/ProjectInformation.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/TeamInformation',
|
path:'/Manager/TeamInformation',
|
||||||
component:() =>import('@/Manager/components/TeamInformation.vue')
|
component:() =>import('@/views/ManagePage/TeamInformation.vue')
|
||||||
},{
|
},{
|
||||||
path:'/Manager/NewsInformation',
|
path:'/Manager/NewsInformation',
|
||||||
component:() =>import('@/Manager/components/NewsInformation.vue')
|
component:() =>import('@/views/ManagePage/NewsInformation.vue')
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
,{
|
,{
|
||||||
path:'/LoginRegister/Login',
|
path:'/LoginRegister/Login',
|
||||||
name:'Login',
|
name:'Login',
|
||||||
component:() =>import('@/LoginRegister/Login.vue')
|
component:() =>import('@/views/AuthPage/Login.vue')
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
@ -65,7 +65,7 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import {reactive} from 'vue';
|
import {reactive} from 'vue';
|
||||||
import {message} from "ant-design-vue";
|
import {message} from "ant-design-vue";
|
||||||
import requests from "../public/request.js";
|
import requests from "@/js/request.js";
|
||||||
import {useRouter} from "vue-router";
|
import {useRouter} from "vue-router";
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
@ -98,7 +98,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import {reactive} from 'vue';
|
import {reactive} from 'vue';
|
||||||
import requests from '../public/request.js'
|
import requests from '@/js/request.js'
|
||||||
import {message} from "ant-design-vue";
|
import {message} from "ant-design-vue";
|
||||||
import {useRouter} from "vue-router";
|
import {useRouter} from "vue-router";
|
||||||
|
|
40
src/views/HomePage/IndexView.vue
Normal file
40
src/views/HomePage/IndexView.vue
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<template>
|
||||||
|
<div class="w-[100%] h-auto">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<NavBar/>
|
||||||
|
<Carousel/>
|
||||||
|
<ProjectList/>
|
||||||
|
<TeamProfile/>
|
||||||
|
<NewProfile/>
|
||||||
|
<ExcellentMember/>
|
||||||
|
<More/>
|
||||||
|
<Icp/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import {onMounted} from 'vue'
|
||||||
|
import {initFlowbite} from 'flowbite'
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
initFlowbite();
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import NavBar from "@/components/HomeComponents/NavBar.vue";
|
||||||
|
import Carousel from "@/components/HomeComponents/Carousel.vue";
|
||||||
|
import Icp from "@/components/HomeComponents/Icp.vue";
|
||||||
|
import More from "@/components/HomeComponents/More.vue";
|
||||||
|
import NewProfile from "@/components/HomeComponents/NewProfile.vue";
|
||||||
|
import ProjectList from "@/components/HomeComponents/ProjectList.vue";
|
||||||
|
import TeamProfile from "@/components/HomeComponents/TeamProfile.vue";
|
||||||
|
import ExcellentMember from "@/components/HomeComponents/ExcellentMember.vue";
|
||||||
|
|
||||||
|
export default{
|
||||||
|
components: {Icp, More,ProjectList, ExcellentMember, NewProfile, TeamProfile, Carousel, NavBar},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
@ -101,7 +101,7 @@ import {
|
|||||||
UserOutlined
|
UserOutlined
|
||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
import {Form, Modal} from 'ant-design-vue';
|
import {Form, Modal} from 'ant-design-vue';
|
||||||
import requests from "../../public/request.js";
|
import requests from "@/js/request.js";
|
||||||
|
|
||||||
const open = ref(false);
|
const open = ref(false);
|
||||||
const addopen = ref(false);
|
const addopen = ref(false);
|
@ -143,7 +143,7 @@ import {
|
|||||||
SearchOutlined
|
SearchOutlined
|
||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
import {Form, message, Modal} from 'ant-design-vue';
|
import {Form, message, Modal} from 'ant-design-vue';
|
||||||
import requests from "../../public/request.js";
|
import requests from "@/js/request.js";
|
||||||
// const current1 = ref(1);
|
// const current1 = ref(1);
|
||||||
// const current2 = ref(2);
|
// const current2 = ref(2);
|
||||||
// const onChange = pageNumber => {
|
// const onChange = pageNumber => {
|
@ -5,6 +5,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import Header from "@/Manager/Header.vue";
|
import Header from "@/components/ManageComponents/Header.vue";
|
||||||
import MainSection from "@/Manager/MainSection.vue";
|
import MainSection from "@/components/ManageComponents/MainSection.vue";
|
||||||
</script>
|
</script>
|
@ -86,7 +86,7 @@ import {
|
|||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
import {message, Modal} from "ant-design-vue";
|
import {message, Modal} from "ant-design-vue";
|
||||||
import {usePagination} from 'vue-request';
|
import {usePagination} from 'vue-request';
|
||||||
import requests from '../../public/request.js';
|
import requests from '@/js/request.js';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
|
|
||||||
const roleid = ref('');
|
const roleid = ref('');
|
@ -156,7 +156,7 @@ import {
|
|||||||
SearchOutlined
|
SearchOutlined
|
||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
import {message, Modal} from "ant-design-vue";
|
import {message, Modal} from "ant-design-vue";
|
||||||
import requests from "@/public/request.js";
|
import requests from "@/js/request.js";
|
||||||
|
|
||||||
const AddDiaLog = ref(false);
|
const AddDiaLog = ref(false);
|
||||||
const EditDiaLog = ref(false);
|
const EditDiaLog = ref(false);
|
Binary file not shown.
Before Width: | Height: | Size: 489 KiB |
Loading…
x
Reference in New Issue
Block a user