Как подключить яндекс карты к сайту на vue3 js?
Как я не пытался и через скрипт и через 2 разных npm install, все бестолку. Даже код нет сымсла прилагать, потому что по документации там не много вообще писать, да по сути там вообще ctrl c + ctrl v, но как не пиши все равно летят ошибки. Если у кого получалось, то прикрепить пожалуйста код
Всеже попробовал сделать как в документации https://yandex.ru/dev/jsapi30/doc/ru/dg/concepts/integrations/vuefy
сначала просто добавил скрипт в index.html: <script src="https://api-maps.yandex.ru/v3/?apikey=YOUR_API_KEY&lang=ru_RU"></script>
ну и соответственно поменял ключ и свой поставил.
Потом написал в том файле, где добавляю карту следующее:
<script setup>
import Hea from "../components/header.vue"
import Foo from '../components/footer.vue'
const ymaps3Vue = await ymaps3.import('@yandex/ymaps3-vuefy');
const vuefy = ymaps3Vue.vuefy.bindTo(Vue);
const { YMap, YMapDefaultSchemeLayer, YMapDefaultFeaturesLayer, YMapMarker } = vuefy.module(ymaps3);
</script>
Так было по документации. Что подключать не подключать в main js в той документации по сути нет ну и потом в template написал:
<YMap :location="location">
<YMapDefaultSchemeLayer />
<YMapDefaultFeaturesLayer />
<YMapMarker :coordinates="[34, 57]" draggable>
<div class="marker marker_pill">I'm marker!</div>
</YMapMarker>
</YMap>
А ошибку он в итоге выдает такую:
main.js:17
[Vue warn]: Component <Anonymous>: setup function returned a promise, but no <Suspense> boundary was found in the parent component tree. A component with async setup() must be nested in a <Suspense> in order to be rendered.
at <Contacts onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< undefined > >
at <RouterView>
at <App>
Ответы (1 шт):
Ошибка в коде не связана с особенностями работы API Яндекс Карт. Это внутренняя ошибка фреймворка, которая связана с некорректным указанием компонента . Подробнее об особенностях работы этого компонента вы можете прочитать в документации Vue.js.