Vue.js 如何使用;“数据”;或;方法;结果发送到VueRouter prop

Vue.js 如何使用;“数据”;或;方法;结果发送到VueRouter prop,vue.js,vuejs2,vue-component,vue-router,Vue.js,Vuejs2,Vue Component,Vue Router,我有如下简单的菜单选项卡: 表1 |表2 |表3 管线随单个组件附着到每个选项卡,如下例所示 const router = new VueRouter({ routes: [ { path: '/views/type1', component: Type1, props: { listname: value} } ] }) 问题: 如何修改路由[]道具以从vue的“数据”中获取值。基本上, 其中一个组件接受属性为“Array”,我需要从服务中提取这些数据并附加到组件 route

我有如下简单的菜单选项卡:

表1 |表2 |表3

管线随单个组件附着到每个选项卡,如下例所示

const router = new VueRouter({
  routes: [
    { path: '/views/type1', component: Type1, props: { listname: value} }
  ]
})
问题: 如何修改路由[]道具以从vue的“数据”中获取值。基本上, 其中一个组件接受属性为“Array”,我需要从服务中提取这些数据并附加到组件

routes: [
        { path: '/views/type1', component: Type1, props: { collection: *[retrieve from service and attach here]*} }
      ]
//集合无法从“方法”或“数据”绑定,它只接受静态数据。

Vue Router的字段不包含要传递到渲染视图组件的属性,而是一个布尔标志(或视图名称到布尔标志的哈希/映射),告诉Vue Router传递任何路由参数。(从路径解析)作为组件的属性

routes: [
        { path: '/views/type1', component: Type1, props: { collection: *[retrieve from service and attach here]*} }
      ]
例如,考虑到以下情况:

  • 路由配置:

    {
      path: '/user/:name/:uid',
      component: User,
      props: true
    }
    
  • 用户
    组件定义:

    export default {
      props: ['name', 'uid']
    }
    
  • 网址:

    /user/john/123
    
然后,
User
将呈现
name
设置为
john
uid
设置为
123
,相当于:

<User :name="john" :uid="123" />
Vue Router字段不包含要传递给渲染视图组件的属性,而是一个布尔标志(或视图名称到布尔标志的哈希/映射),告诉Vue Router将任何路由参数(从路径解析)作为属性传递给组件

routes: [
        { path: '/views/type1', component: Type1, props: { collection: *[retrieve from service and attach here]*} }
      ]
例如,考虑到以下情况:

  • 路由配置:

    {
      path: '/user/:name/:uid',
      component: User,
      props: true
    }
    
  • 用户
    组件定义:

    export default {
      props: ['name', 'uid']
    }
    
  • 网址:

    /user/john/123
    
然后,
User
将呈现
name
设置为
john
uid
设置为
123
,相当于:

<User :name="john" :uid="123" />

请提供父组件和子组件的代码此处没有父/子组件。基本上,我希望将值传递给routes组件道具。该值应来自`new Vue({data或methods})字段。但当我附加“data”时属性来路由,然后它说,undefined property.ok,那么提供main.js代码和routerplease提供父组件和子组件的代码这里没有父/子组件。基本上,我想将值传递给路由组件props。该值应该来自`new Vue({data或methods})字段。但是当我附加“data”时属性来路由,然后它说,undefined property.ok,所以提供main.js代码和路由器
路径:'/user/:name/:uid',
:这里,代替name和uid,需要从
新Vue({data:{{list:[..]})传递集合
我们能否将集合传递给组件,集合在主Vue实例上检索,而不是进入组件。不,您不能通过Vue路由器道具进行检索。您必须路由到设置集合的包装器组件,如我在回答中所示。好的。因此,我们不能将集合从Vue实例设置为路由器道具。
>路径:'/user/:name/:uid',
:此处需要从
新Vue({data:{list:[..]})传递集合,以代替name和uid
我们能否将集合传递给组件,集合在主Vue实例上检索,而不是进入组件。不,您不能通过Vue路由器道具进行检索。您必须路由到设置集合的包装器组件,如我在回答中所示。好的。因此,我们无法将集合从Vue实例设置为路由器道具。