gpt4 book ai didi

javascript - Vue.js 中的同级组件与 vue-router ?

转载 作者:行者123 更新时间:2023-12-03 06:35:41 25 4
gpt4 key购买 nike

我有一些组件映射到多个不同的路由,我想知道为每个路由创建的组件在数据传递方式方面是否被视为同级组件?目前尚不清楚哪个组件是该结构中的父组件:

PageOne = Vue.extend( {
template: "#page-one"
})
PageTwo = Vue.extend({
template: "#page-two"
})
Home = Vue.extend({
template: "#home"
})
var router = new VueRouter()
router.map({
'/': {
component: Home
},
'/PageOne': {
component: PageOne
},
'/PageTwo': {
component: PageTwo
}
})


var App = Vue.extend({})
router.start(App, "#app")

因此,如果我想将数据从 Home 路由传递到 PageOne,我是否需要使用全局事件总线,或者我可以使用 props 来传递数据从一条路线到下一条路线?这是一个演示:http://codepen.io/p-adams/pen/kXwxRR

最佳答案

您应该使用 Vuex 的全局事件总线或状态管理,或者将它们设置为嵌套路由 ( http://router.vuejs.org/en/nested.html ):

router.map({
'/': {
component: Home,
subRoutes: {
'/PageOne': {
component: PageOne
},
'/PageTwo': {
component: PageTwo
}
}
}
})

如果你这样做,你可以将 props 传递给你的 <router-view> :

<div id="app">
<router-view :foo="bar"></router-view>
</div>

http://router.vuejs.org/en/view.html

关于javascript - Vue.js 中的同级组件与 vue-router ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38230990/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com