我正在尝试将地图网站移至Vue。
该网站使用普通JS工作,可从公共API提取JSON并构建1)带有卡片列表的侧边栏和2)地图。
在Vue中,很明显,我将这两个部分分成了不同的组件,就像这样:
<template>
<div>
<CardsList :cards-data="this.info" />
<Map :cards-data="this.info" />
</div>
</template>
由于仅在Map组件中初始化Mapbox,所以我很难在Cards List中获得一些事件处理程序,因为它们应该与Map交互。它的内容看起来异常复杂。
我在做什么错?应该在App.vue上初始化地图,并且侧边栏是唯一的组件吗?像map.getLayer
这样的Mapbox GL JS表达式在组件上可用吗?