18 changed files with 727 additions and 9 deletions
@ -1 +1,311 @@ |
|||
{"code":200,"msg":"操作成功","data":{"temperature":"15","columnList":[{"moduleType":1,"name":"美食","nameEn":"","introduce":"","introduceEn":"","crossFileCode":"","verticalFileCode":""},{"moduleType":2,"name":"游玩","nameEn":"","introduce":"","introduceEn":"","crossFileCode":"","verticalFileCode":""},{"moduleType":3,"name":"购物","nameEn":"","introduce":"","introduceEn":"","crossFileCode":"","verticalFileCode":""}],"hotSearch":[{"logoCode":"Jrw0_ifPRL40HwIJuQMv7","logoUrl":"/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png","shopCode":"N58iWdPNw2wAB0X8BxmW1","shopName":"星巴克","building":"A","buildingCode":"suG1YjUhWnvRBJm3ULnCo","buildingOrder":0,"floor":"L1","floorCode":"-vH5uZXijKrzlJQIIIkba","floorOrder":4,"xaxis":"","yaxis":"","navXaxis":"","navYaxis":""}],"status":"多云转阴"}} |
|||
{ |
|||
"code": 200, |
|||
"msg": "操作成功", |
|||
"data": { |
|||
"temperature": "15", |
|||
"columnList": [ |
|||
{ |
|||
"moduleType": 1, |
|||
"name": "美食", |
|||
"nameEn": "", |
|||
"introduce": "", |
|||
"introduceEn": "", |
|||
"crossFileCode": "", |
|||
"verticalFileCode": "" |
|||
}, |
|||
{ |
|||
"moduleType": 2, |
|||
"name": "游玩", |
|||
"nameEn": "", |
|||
"introduce": "", |
|||
"introduceEn": "", |
|||
"crossFileCode": "", |
|||
"verticalFileCode": "" |
|||
}, |
|||
{ |
|||
"moduleType": 3, |
|||
"name": "购物", |
|||
"nameEn": "", |
|||
"introduce": "", |
|||
"introduceEn": "", |
|||
"crossFileCode": "", |
|||
"verticalFileCode": "" |
|||
} |
|||
], |
|||
"hotSearch": [ |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv71", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv72", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv73", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv74", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv75", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv76", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv77", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv78", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv79", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv70", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv712", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv713", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv714", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv715", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv716", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv717", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
}, |
|||
{ |
|||
"logoCode": "Jrw0_ifPRL40HwIJuQMv718", |
|||
"logoUrl": "/iotFile/2023/04/18/Jrw0_ifPRL40HwIJuQMv7.png", |
|||
"shopCode": "N58iWdPNw2wAB0X8BxmW1", |
|||
"shopName": "星巴克", |
|||
"building": "A", |
|||
"buildingCode": "suG1YjUhWnvRBJm3ULnCo", |
|||
"buildingOrder": 0, |
|||
"floor": "L1", |
|||
"floorCode": "-vH5uZXijKrzlJQIIIkba", |
|||
"floorOrder": 4, |
|||
"xaxis": "", |
|||
"yaxis": "", |
|||
"navXaxis": "", |
|||
"navYaxis": "" |
|||
} |
|||
], |
|||
"status": "多云转阴" |
|||
} |
|||
} |
|||
|
|||
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 631 B |
|
After Width: | Height: | Size: 573 B |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
@ -0,0 +1,107 @@ |
|||
<template> |
|||
<div class="hot-container"> |
|||
<div class="title">{{ $t('hot') }}</div> |
|||
<ScrollView class="myScoll" :list="list" :pull-up="false"> |
|||
<div class="shop_list"> |
|||
<div v-for="item in list" :key="item.shopCode" class="shop_item"> |
|||
<div class="top"> |
|||
<img v-lazy="item.logoUrl" alt="" /> |
|||
</div> |
|||
<div class="info"> |
|||
<div class="name">{{ switchLanguage(item, 'shopName') }}</div> |
|||
<div class="right"> |
|||
<img src="@/assets/images/search/position.png" alt="" /> |
|||
<div class="hose_num">{{ item.houseNumber }}</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</ScrollView> |
|||
</div> |
|||
</template> |
|||
|
|||
<script setup lang="ts"> |
|||
import { ref } from 'vue' |
|||
import { getIndexJson } from '@/http/api/base' |
|||
import ScrollView from '@/base/ScrollView/ScrollView.vue' |
|||
const list = ref<HotSearch[]>() |
|||
getIndexJson().then(({ data }) => { |
|||
list.value = data.hotSearch |
|||
}) |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.hot-container { |
|||
width: 714px; |
|||
|
|||
.title { |
|||
margin-bottom: 24px; |
|||
font-size: 36px; |
|||
font-family: 'font_bold'; |
|||
color: #595447; |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
line-height: 44px; |
|||
} |
|||
.myScoll { |
|||
overflow: hidden; |
|||
height: 626px; |
|||
} |
|||
.shop_list { |
|||
display: grid; |
|||
gap: 12px 12px; |
|||
grid-template-columns: 1fr 1fr 1fr; |
|||
.shop_item { |
|||
width: 230px; |
|||
height: 270px; |
|||
.top { |
|||
@include fl(center); |
|||
|
|||
width: 230px; |
|||
height: 230px; |
|||
margin-bottom: 16px; |
|||
background: #fff; |
|||
border-radius: 8px; |
|||
img { |
|||
width: 180px; |
|||
height: 180px; |
|||
} |
|||
} |
|||
.info { |
|||
@include fl(space-between); |
|||
|
|||
width: 230px; |
|||
height: 24px; |
|||
.name { |
|||
@include no-wrap; |
|||
|
|||
max-width: 140px; |
|||
height: 24px; |
|||
font-size: 16px; |
|||
font-family: 'font_bold'; |
|||
color: rgb(0 0 0 / 60%); |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
line-height: 24px; |
|||
} |
|||
.right { |
|||
@include fl(); |
|||
img { |
|||
width: 14px; |
|||
height: 16px; |
|||
margin-right: 6px; |
|||
} |
|||
.hose_num { |
|||
font-size: 14px; |
|||
font-family: 'font_bold'; |
|||
color: #a6976f; |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
line-height: 22px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
@ -0,0 +1,127 @@ |
|||
<template> |
|||
<div class="key-container"> |
|||
<div class="inp"> |
|||
<img src="@/assets/images/search/searchi.png" alt="" /> |
|||
<div class="ph">搜索</div> |
|||
</div> |
|||
<div class="board-container"> |
|||
<ul class="letter-items"> |
|||
<li v-for="(item, index) of letter" :key="item" class="letter" :class="{ 'active-btn': current === index }"> |
|||
{{ item }} |
|||
</li> |
|||
<li class="letter del" :class="{ 'active-btn': current === 37 }"> |
|||
<img src="@/assets/images/search/del.png" alt="" /> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script setup lang="ts"> |
|||
import { ref } from 'vue' |
|||
|
|||
// 键盘按钮列表 |
|||
const letter = [ |
|||
'Q', |
|||
'W', |
|||
'E', |
|||
'R', |
|||
'T', |
|||
'Y', |
|||
'U', |
|||
'I', |
|||
'O', |
|||
'P', |
|||
'A', |
|||
'S', |
|||
'D', |
|||
'F', |
|||
'G', |
|||
'H', |
|||
'J', |
|||
'K', |
|||
'L', |
|||
'Z', |
|||
'X', |
|||
'C', |
|||
'V', |
|||
'B', |
|||
'N', |
|||
'M' |
|||
] |
|||
const current = ref(-1) |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.key-container { |
|||
margin: 68px 52px 286px 100px; |
|||
.inp { |
|||
position: relative; |
|||
width: 714px; |
|||
height: 80px; |
|||
padding: 22px 40px; |
|||
margin-bottom: 4px; |
|||
background: #fff; |
|||
border-radius: 12px; |
|||
img { |
|||
position: absolute; |
|||
top: 12px; |
|||
right: 29px; |
|||
width: 56px; |
|||
height: 56px; |
|||
} |
|||
.ph { |
|||
font-size: 28px; |
|||
font-family: 'font_bold'; |
|||
color: #9f9585; |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
line-height: 36px; |
|||
} |
|||
} |
|||
.board-container { |
|||
width: 714px; |
|||
height: 256px; |
|||
padding: 32px 41px; |
|||
background: #fff; |
|||
border-radius: 12px; |
|||
.letter-items { |
|||
display: flex; |
|||
width: 632px; |
|||
flex-wrap: wrap; |
|||
.letter { |
|||
@include fl(center); |
|||
|
|||
width: 56px; |
|||
height: 56px; |
|||
margin-right: 8px; |
|||
margin-bottom: 12px; |
|||
font-size: 20px; |
|||
font-family: 'font_bold'; |
|||
color: #9f9585; |
|||
background: #f4f4f4; |
|||
border-radius: 75px; |
|||
font-style: normal; |
|||
font-weight: 700; |
|||
line-height: 28px; |
|||
&:nth-child(10) { |
|||
margin-right: 0; |
|||
} |
|||
&:nth-child(11) { |
|||
margin-left: 25px; |
|||
} |
|||
&:nth-child(19) { |
|||
margin-right: 24px; |
|||
} |
|||
} |
|||
.active-btn { |
|||
animation: gradient 3s ease 1; |
|||
} |
|||
.del { |
|||
width: 184px; |
|||
margin-right: 0; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
@ -0,0 +1,79 @@ |
|||
<template> |
|||
<div class="quick-container"> |
|||
<div class="quick-item"> |
|||
<img class="sea" src="@/assets/images/search/search.png" alt="" /> |
|||
<div class="text"> |
|||
{{ $t('search_home') }} |
|||
</div> |
|||
</div> |
|||
<div v-for="item in fac" :key="item.code" class="quick-item" @click="handleFacility(item)"> |
|||
<div class="top"> |
|||
<img v-if="item.abbreviation === 'xsj'" src="@/assets/images/index/toilet.png" alt="" /> |
|||
<img v-if="item.abbreviation === 'tcc'" src="@/assets/images/index/parking.png" alt="" /> |
|||
<img v-if="item.abbreviation === 'fwt'" src="@/assets/images/index/service.png" alt="" /> |
|||
</div> |
|||
<div class="text"> |
|||
{{ switchLanguage(item, 'name') }} |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script setup lang="ts"> |
|||
import { toRefs, computed } from 'vue' |
|||
import { useRootStore } from '@/store/root' |
|||
import { useFacilityNav } from '@/composables/useFacilityNav' |
|||
const store = useRootStore() |
|||
const { facilityList } = toRefs(store) |
|||
const { handleFacility } = useFacilityNav() //公共设施导航 |
|||
const fac = computed(() => { |
|||
return facilityList.value.filter(item => item.abbreviation === 'xsj' || item.abbreviation === 'tcc' || item.abbreviation === 'fwt') |
|||
}) |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.quick-container { |
|||
@include fl(); |
|||
|
|||
width: 1680px; |
|||
height: 162px; |
|||
padding: 21px 560px; |
|||
background: url('@/assets/images/search/quickBg.png') no-repeat; |
|||
background-size: 100% 100%; |
|||
border-radius: 24px 0 0; |
|||
.quick-item { |
|||
@include fl(center); |
|||
|
|||
width: 80px; |
|||
height: 120px; |
|||
margin-right: 80px; |
|||
flex-direction: column; |
|||
.sea { |
|||
width: 80px; |
|||
height: 80px; |
|||
border-radius: 50%; |
|||
} |
|||
.top { |
|||
@include fl(center); |
|||
|
|||
width: 80px; |
|||
height: 80px; |
|||
background: #fff; |
|||
border-radius: 50%; |
|||
img { |
|||
width: 48px; |
|||
height: 48px; |
|||
} |
|||
} |
|||
.text { |
|||
margin-top: 16px; |
|||
font-size: 16px; |
|||
font-family: 'font_regular'; |
|||
color: #84754e; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
@ -0,0 +1,51 @@ |
|||
<template> |
|||
<div class="search-container"> |
|||
<img class="close" src="@/assets/images/search/close.png" alt="" @click="close" /> |
|||
<div class="bg"> |
|||
<Quick /> |
|||
<div class="content"> |
|||
<Key /> |
|||
<Hot /> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script setup lang="ts"> |
|||
import Quick from './Quick.vue' |
|||
import Hot from './Hot.vue' |
|||
import Key from './Key.vue' |
|||
const emits = defineEmits(['close']) |
|||
function close() { |
|||
emits('close') |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.search-container { |
|||
position: fixed; |
|||
top: 0; |
|||
left: 0; |
|||
z-index: 998; |
|||
width: 1920px; |
|||
height: 1080px; |
|||
padding: 80px 120px; |
|||
background: rgb(0 0 0 / 50%); |
|||
.close { |
|||
position: fixed; |
|||
top: 50px; |
|||
right: 50px; |
|||
width: 100px; |
|||
height: 100px; |
|||
} |
|||
.bg { |
|||
background: #efeeea; |
|||
border-radius: 24px; |
|||
} |
|||
.content { |
|||
@include fl(flex-start, flex-start); |
|||
|
|||
margin-top: 64px; |
|||
} |
|||
} |
|||
</style> |
|||
@ -0,0 +1,17 @@ |
|||
declare interface HotSearch { |
|||
logoCode: string |
|||
logoUrl: string |
|||
shopCode: string |
|||
shopName: string |
|||
building: string |
|||
buildingCode: string |
|||
buildingOrder: number |
|||
floor: string |
|||
floorCode: string |
|||
floorOrder: number |
|||
xaxis: string |
|||
yaxis: string |
|||
navXaxis: string |
|||
navYaxis: string |
|||
houseNumber: string |
|||
} |
|||
Loading…
Reference in new issue