Vue.js Вызов метода из App.vu, расположенного на текущей открытой странице

Рейтинг: 0Ответов: 1Опубликовано: 05.03.2023

Как вызвать метод из App.vu, находящийся на текущей открытой странице. Открытие страниц осуществляется с помощью vue-router?

Я попытался использовать реф-ссылку, добавив ее в код страницы:

Моя страница-компонент, открываемая через маршрутизацию роутера appeals_out.vue:

    <template>
      <div ref="appeals_out">
      ...
      </div>
    </template>
    <script>
      export default {
        data: () => ({
         methods:{
           openFormViewAppeal(id) {...}
         }
      })
    }
    </script>

Мой файл App.vue:

    <template>
        <v-app>
          ...
          <router-view></router-view>
          ...
        </v-app>
    </template>
    <script>
    export default {
      data() {
        return{...}
      },
      methods:{
        openObject(object_id, object_type){
           var appeals_out = this.$refs.appeals_out
           console.log('appeals_out: ',appeals_out)        // -> appeals_out: undefined
           appeals_out.openFormViewAppeal(object_id)
        }
    }
    </script>

Но при попытке получить доступ к компоненту страницы по ссылке получаю 'undefined'.

Ответы

▲ 0

Разобрался. Добавил ref в тег <router-view> и получил доступ к странице, котрая загружается в него через роутер.