Vue JS 2 связь компонентов, и доступ к data

1041
06 января 2017, 11:38

Как связать компоненты и получить доступ к data. В проекте использую vue-route. Структура такая

component

a.vue

b.vue

c.vue

app.vue

main.js

использую es6 для связывания

import Vue from 'vue'
import VueRouter from 'vue-router'
import app from './app.vue'

app.vue получает данные к которым необходимо иметь доступ в других компонентах. Согласно документации доступ к ним нужно получать через props Что я и пытаюсь сделать. Компонент app.vue отображает часть шаблона и получает данные. Компонент a.vue доступен по route '/' Подключаю компонент app.vue к a.vue что бы получить доступ к его data.

import app from './../app.vue';
export default {
    component: {
        app
    },
    props: ['item', 'settings']
}

Но в props у меня undefined. В app.vue данные приходят и там в data все на месте. У меня подозрение что я не правильно связывают компоненты, и a.vue не знает откуда брать данные.

p.s надеюсь смог доступно изложить суть проблемы.

Answer 1

В es6 почему-то обычный подход получения props не работает. Я сталкивался с этой проблемой, к сожалению, ничего лучше передачи данных напрямую в компонент я не нашел. Пример передачи

<router-view :item="item" :settings="settings"></router-view> 

Делать import app.vue и a.vue в этом случае нет необходимости, router уже их подключил. Подобные вопросы и ответы лучше искать на официальном форуме vue js. Если найдете решение обычным подходом или любым другим, напишите его, а то надоедает передавать в шаблон.

READ ALSO
&ldquo;Код&rdquo; музыкальных файлов

“Код” музыкальных файлов

Я хочу попробовать создать программу для создания/редактирования какой-либо музыкиЧисто в образовательных целях я хочу узнать как работать...

313
Angularjs 2 и jquery

Angularjs 2 и jquery

Как правильно подключить jQuery к проекту на AngularJS 2?

340
Передача данных между потоками POCO C++ Libraries

Передача данных между потоками POCO C++ Libraries

Использую TCPServer (POCO C++ Libraries), который создает поток на 1 клиентаНеобходимо передавать клиенту(потоку), к примеру, данные о передвижении персонажей...

686
Не собирается шаблонный проект CUDA 8.0 в VS15

Не собирается шаблонный проект CUDA 8.0 в VS15

Доброго времени суток! Порядок моих действий:

368