<template>
|
<div class="w100 h100">
|
<div class="aisde-title">
|
<div
|
class="flex items-center set-li"
|
v-for="(item, index) in state.asideTitleList"
|
:key="index"
|
@click="handleClick(item.id)"
|
:class="{ 'set-li-active': state.currentActive === item.id }"
|
>
|
<img :src="item.icon" alt="" class="pl-2.5 pr-2.5 w-4 h-4" style="box-sizing: content-box" />
|
<span class="font-medium text-sm text-white tracking-wide">{{ item.title }}</span>
|
</div>
|
</div>
|
<div class="user_login">
|
<p class="text-white font-medium text-sm text-center">您更好的AI助手!</p>
|
<div class="set-login">
|
<span class="text-stone-100 font-medium text-sm text-center">登录 / 注册</span>
|
</div>
|
</div>
|
<div class="offices">
|
<div class="officeText">
|
<img :src="'/static/images/wave/Waveform.png'" alt="" class="pl-2.5 pr-2.5 w-4 h-4" style="box-sizing: content-box" />
|
<span class="font-medium text-sm text-white tracking-wide">Office 智能助手</span>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<script setup lang="ts">
|
import { reactive } from 'vue';
|
import { gotoRoute } from '/@/utils/route';
|
let state = reactive({
|
asideTitleList: [
|
{
|
id: 1,
|
icon: '/static/images/wave/AsideIcon.png',
|
title: '应用场景',
|
},
|
{
|
id: 2,
|
icon: '/static/images/wave/AsideIcon.png',
|
title: '帮助中心',
|
},
|
{
|
id: 3,
|
icon: '/static/images/wave/AsideIcon.png',
|
title: '个人设置',
|
},
|
{
|
id: 4,
|
icon: '/static/images/wave/AsideIcon.png',
|
title: '关于水务AI',
|
},
|
],
|
currentActive: 0,
|
});
|
const handleClick = (id) => {
|
state.currentActive = id;
|
if (id == 1) {
|
gotoRoute({ name: 'Scenario' });
|
}
|
};
|
</script>
|
<style scoped lang="scss">
|
.aisde-title {
|
padding-top: 18px;
|
margin-left: 16px;
|
margin-right: 22px;
|
border-top: 1px solid #383838;
|
margin-bottom: 22px;
|
}
|
.set-li {
|
height: 30px;
|
margin-bottom: 4px;
|
display: flex;
|
-webkit-box-align: center;
|
-ms-flex-align: center;
|
align-items: center;
|
cursor: pointer;
|
}
|
.set-li-active {
|
width: 214px;
|
height: 30px;
|
background-color: #3b3d40;
|
|
border-radius: 6px;
|
span {
|
background: linear-gradient(90deg, #84fdd4 0, #2a82e4);
|
background-clip: text;
|
-webkit-background-clip: text;
|
-webkit-text-fill-color: transparent;
|
}
|
}
|
.user_login {
|
box-sizing: border-box;
|
width: 100%;
|
padding: 0 20px 10px;
|
position: relative;
|
}
|
.set-login {
|
margin-top: 14px;
|
width: 100%;
|
height: 36px;
|
background: #1c86ff;
|
-webkit-box-shadow: 0 2px 6px 0 rgba(8, 101, 207, 0.2), inset 0 0 7px 0 hsla(0, 0%, 100%, 0.5);
|
box-shadow: 0 2px 6px 0 rgba(8, 101, 207, 0.2), inset 0 0 7px 0 hsla(0, 0%, 100%, 0.5);
|
display: flex;
|
-webkit-box-align: center;
|
-ms-flex-align: center;
|
align-items: center;
|
-webkit-box-pack: center;
|
-ms-flex-pack: center;
|
justify-content: center;
|
font-size: 14px;
|
font-weight: 500;
|
color: #eee;
|
border-radius: 8px;
|
-webkit-user-select: none;
|
-moz-user-select: none;
|
-ms-user-select: none;
|
user-select: none;
|
cursor: pointer;
|
-webkit-transition: all 0.3s;
|
-o-transition: all 0.3s;
|
transition: all 0.3s;
|
}
|
.offices {
|
padding: 0 20px;
|
cursor: pointer;
|
text-decoration: none;
|
position: relative;
|
}
|
.officeText {
|
width: 100%;
|
height: 36px;
|
background: #1c2d57;
|
border-radius: 8px;
|
display: flex;
|
-webkit-box-align: center;
|
-ms-flex-align: center;
|
align-items: center;
|
-webkit-box-pack: center;
|
-ms-flex-pack: center;
|
justify-content: center;
|
}
|
</style>
|