Vue.js VueJs-使用vue路由器将数据传递到子例程组件
我不明白如何将“路由组件”加载的数据传递给“子例程组件”。。 (我将Vue.js与Vue路由器一起使用) 我的路由器是这样的:Vue.js VueJs-使用vue路由器将数据传递到子例程组件,vue.js,vue-router,Vue.js,Vue Router,我不明白如何将“路由组件”加载的数据传递给“子例程组件”。。 (我将Vue.js与Vue路由器一起使用) 我的路由器是这样的: router.map({ '/a': { component: A, subRoutes: { '/b': { component: B }, '/c': { component: C } } } }); 我只想与组件B和C共享组件A加载的数据 提前谢谢 您
router.map({
'/a': {
component: A,
subRoutes: {
'/b': {
component: B
},
'/c': {
component: C
}
}
}
});
我只想与组件B和C共享组件A加载的数据
提前谢谢 您有两个简单的选择 丑陋的人 使用子例程组件中的选项。这使您能够访问父实例,这不是推荐的方法,但它是有效的
//来自子组件
这是$parent.someData
好的
使用。道具使您有机会将任何数据从父对象传递给子对象。它更好,因为它可以防止错误(您传递的是数据而不是实例),并且您只传递您需要的内容,即使它不是父数据的一部分
// parent component
<template>
<child :childsdata="parentdata"></child>
</template
<script>
export default {
data: function () {
return {
parentdata: 'Hello!'
}
}
}
</script>
// child component
<template>
{{ childsdata }} <!-- prints "Hello!" -->
</template>
<script>
export default {
props: {
childsdata: {
type: String
}
}
}
</script>
//父组件
也许vuex
正是您想要的:使用道具可以从组件B
向组件C
发送数据?我在很多地方都找到了这种“”风格的答案,但您可以看到,在vue路由器下没有“正义”,我不想添加道具,因为每个路由器都需要不同的道具。这应该是vue路由器使用的routes对象的一部分。