在我的index.js我有一個Vue對象,聲明一個路由器並呈現所有頁面的持有者。如何訪問在較低(父級)級別聲明的Vue對象的屬性?
const app = new Vue({
...,
render: _ => _(App),
router,
...,
el: "#app-base"});
在頁面渲染我有順序有其子等。現在,我想訪問的最外層水平和operate on it in the context of one of the toppy subcomponents宣佈路由器實例的部件。
我該如何做到這一點?
它並不存在於上下文中。我需要以某種方式將它傳遞給樹嗎?什麼會是一個很好的方法來做到這一點?我是否應該避免需要訪問工作組件中的底層聲明實例?
在這些情況下,您希望使用[Vuex](https://github.com/vuejs/vuex)來管理上層組件和下層組件之間的狀態。 – joaumg
您是否打算使用商店來保存路由器的實例?可以做。其他考慮如何?在我看來,**如果**需要在toppy級別訪問路由器,則應考慮採用不同的方法,因爲這意味着開始時會出現不好的設計。我有權被關注嗎?還是一種常見的情況? –
組件互相溝通是正常的。避免的是範圍混亂,它將變成處理具有相同範圍的多個組件......此外,Vuex添加了一個單點突變,這使得維護更容易。但是,這是我第一次看到一個組件與路由器通信。所以,可能會有另一種選擇( – joaumg