1

如果在特定路由上,我正在尝试将道具传递给路由器中的组件。

找到的所有教程仅使用一个组件,因此可以简单地将道具附加到列表中。

但是对于多个组件,它不起作用。

name: "Room",
  components: {
    navbar: TitleRooms,
    content: Room,
    props: {
        title: "message"
      }
  }

我试过这个,但它根本什么也没做。

name: "Room",
  components: {
    navbar: {
      TitleRooms,
      props: {
        title: "message"
      }
    },
    content: Room
  }

我也试过这个,但它也不起作用。

是否可以使用多个嵌套的命名路由器视图正确执行此操作?

4

2 回答 2

1

据我所知,您正在尝试这样做:

name: "Room",
components: {
  navbar: TitleRooms,
  content: Room
},
props: {
  navbar: {
    title: "message"
  },
  content: false
}

这应该将值"message" for the proptitle toTitleRooms . It won't pass any props toRoom . If you want to pass props to both components you can just change thefalse` 传递给包含您想要的道具的适当对象。

于 2019-10-11T17:46:28.117 回答
0

实际上你的路由渲染了Room组件,所以这个接收参数。当然 Navbar 可以接收它的 props,但你应该通过template. 做:

<navbar :title="title" />

将 Room 组件(来自路由参数)绑定this.title到导航栏

于 2019-10-11T17:42:00.847 回答