@ -6,8 +6,8 @@
< / Transition >
< / Transition >
<!-- 区域列表 -- >
<!-- 区域列表 -- >
< Transition appear enter -active -class = " animate__animated animate__fadeIn " >
< Area v -if = " floorIdx ! = = 6 " :area-name ="areaName" @change-area ="changeAreas" / >
< Transition appear enter -active -class = " animate__animated animate__fadeIn " leave -active -class = " animate__animated animate__fadeOut " >
< Area v -if = " floorIdx = = = 3 | | floorIdx = = = 5 " :area-name ="areaName" @change-area ="changeAreas" / >
< / Transition >
< / Transition >
<!-- 店铺列表 -- >
<!-- 店铺列表 -- >
@ -27,6 +27,14 @@
< / div >
< / div >
< / ScrollView >
< / ScrollView >
< div class = "faclists" >
< div class = "faclists" >
< Transition appear enter -active -class = " animate__animated animate__fadeIn " leave -active -class = " animate__animated animate__fadeOut " >
< div v-if ="showFoodIn" class="reset-dir" @click="handleMapIcon(foodIn, -1)" >
< div class = "top" : class = "mapIdx === -1 && 'ac'" >
< img :src ="foodIn.icon" alt = "" / >
< / div >
< div class = "txt" > { { switchLanguage ( foodIn , 'name' ) } } < / div >
< / div >
< / Transition >
< div v-for ="(item, index) in list" :key="item.name" class="reset-dir" @click="handleMapIcon(item, index)" >
< div v-for ="(item, index) in list" :key="item.name" class="reset-dir" @click="handleMapIcon(item, index)" >
< div class = "top" : class = "mapIdx === index && 'ac'" >
< div class = "top" : class = "mapIdx === index && 'ac'" >
< img :src ="item.icon" alt = "" / >
< img :src ="item.icon" alt = "" / >
@ -73,7 +81,7 @@
<!-- 区域缩略图 -- >
<!-- 区域缩略图 -- >
< Transition appear enter -active -class = " animate__animated animate__fadeIn " >
< Transition appear enter -active -class = " animate__animated animate__fadeIn " >
< img v -if = " floorIdx ! = = 6 " class = "area" :src ="areaPic[areaName]" alt = "" / >
< img v -if = " floorIdx = = = 3 | | floorIdx = = = 5 " class = "area" :src ="areaPic[areaName]" alt = "" / >
< / Transition >
< / Transition >
<!-- 人行道等 -- >
<!-- 人行道等 -- >
@ -105,10 +113,11 @@ import ShopList from './ShopList.vue'
import Place from './Place.vue'
import Place from './Place.vue'
import ArtList from './ArtList.vue'
import ArtList from './ArtList.vue'
import FloorPicList from './FloorPicList.vue'
import FloorPicList from './FloorPicList.vue'
import { MapControl } from './list'
const store = useRootStore ( )
const store = useRootStore ( )
const { switchLanguage } = useSwitchLanguage ( )
const { switchLanguage } = useSwitchLanguage ( )
const { language , facilityList , artPlaceList , currentArtName } = toRefs ( store )
const { language , facilityList , artPlaceList , currentArtName } = toRefs ( store )
const { floorIdx , areaName , selectedShopList , changeFloor , changeArea , changeFoodShopList } = useGuideFilterShop ( ) / / 筛 选 店 铺
const { floorIdx , areaName , selectedShopList , changeFloor , changeArea , changeFoodShopList , showFoodIn } = useGuideFilterShop ( ) / / 筛 选 店 铺
const { handleMapIcon , list , mapIdx } = useGuideMapOperation ( changeFloor , changeFoodShopList ) / / 复 位 位 置 等 操 作
const { handleMapIcon , list , mapIdx } = useGuideMapOperation ( changeFloor , changeFoodShopList ) / / 复 位 位 置 等 操 作
const { handleFacility } = useFacilityNav ( ) / / 公 共 设 施 导 航
const { handleFacility } = useFacilityNav ( ) / / 公 共 设 施 导 航
@ -123,14 +132,15 @@ getAreaPicList().then(({ data }) => {
/ / 切 换 楼 层
/ / 切 换 楼 层
function changeFloors ( floorOrder : number ) {
function changeFloors ( floorOrder : number ) {
changeFloor ( floorOrder )
changeFloor ( floorOrder )
mapIdx . value = - 1
mapIdx . value = - 2
areaName . value = '全部区域'
currentArtName . value && store . SET_CURRENT_ART_NAME ( '' )
currentArtName . value && store . SET_CURRENT_ART_NAME ( '' )
}
}
/ / 切 换 区 域
/ / 切 换 区 域
function changeAreas ( name : string ) {
function changeAreas ( name : string ) {
changeArea ( name )
changeArea ( name )
mapIdx . value = - 1
mapIdx . value = - 2
currentArtName . value && store . SET_CURRENT_ART_NAME ( '' )
currentArtName . value && store . SET_CURRENT_ART_NAME ( '' )
}
}
@ -158,6 +168,13 @@ function show(item: ArtPlace) {
store . SET_CURRENT_ART_NAME ( item . content . name )
store . SET_CURRENT_ART_NAME ( item . content . name )
store . SET_SHOP ( shop )
store . SET_SHOP ( shop )
}
}
const foodIn = {
name : MapControl . FOOD ,
nameEn : 'food' ,
icon : require ( '@/assets/images/guide/food.svg' ) ,
iconActive : require ( '@/assets/images/guide/brand_active.svg' )
}
< / script >
< / script >
< style lang = "scss" scoped >
< style lang = "scss" scoped >
@ -240,7 +257,7 @@ function show(item: ArtPlace) {
. line {
. line {
width : 1 px ;
width : 1 px ;
height : 32 px ;
height : 32 px ;
margin : 0 32 px 0 16 px ;
margin : 8 px 32 px 0 16 px ;
background : rgb ( 0 0 0 / 10 % ) ;
background : rgb ( 0 0 0 / 10 % ) ;
}
}
. myScroll {
. myScroll {
@ -339,24 +356,5 @@ function show(item: ArtPlace) {
width : 256 px ;
width : 256 px ;
height : 100 px ;
height : 100 px ;
}
}
. floor - pic - list {
position : fixed ;
top : 232 px ;
right : 50 px ;
z - index : 998 ;
. floor {
width : 296 px ;
height : 86 px ;
padding : 3 px 0 ;
margin - bottom : 8 px ;
background : linear - gradient ( 270 deg , rgb ( 138 118 106 / 10 % ) 0 % , rgb ( 138 118 106 / 0 % ) 100 % ) ;
border - radius : 0 24 px 24 px 0 ;
img {
width : 200 px ;
height : 80 px ;
}
}
}
}
}
< / style >
< / style >