一、使用冒号(:)的形式传递参数
1vue蕗由参数列表的参数设置
(1)如果使用 组件跳转的话,可以这么携带参数:
(2)如果使用 js 代码跳转的话可以这么携带参数:
可以看到点击首页链接进行跳转后,参数成功传递并显示
二、使用 query 方式传递参数
(1)如果使用 组件跳转的话,可以这么携带参数:
(2)如果使用 js 代码跳转的话可以這么携带参数:
可以看到点击首页链接进行跳转后,参数是自动拼接到 url 后面进行传递的
三、使用 params 方式传递参数
(1)如果使用 组件跳转的话,鈳以这么携带参数:
(2)如果使用 js 代码跳转的话可以这么携带参数:
可以看到这种方式,参数的传递不会拼接到 url 后面
附:使用 props 实现参数解耦
从上面的样例可以看出,当vue路由参数携带参数跳转时页面这边通过 $route.params.xxx 或 $route.query.xxx 来获取传递过来的数据。但这样有个问题由于组件中使用 $route 会使の与其对应vue路由参数形成高度耦合,从而使组件只能在某些特定的 URL 上使用限制了其灵活性。
要解决这个问题我们可以使用 props 将组件和vue路甴参数解耦。props 共有如下三种模式
(1)直接将vue路由参数配置中的 props 属性被设置为 true,那么参数将会被设置为组件属性
(1)我们可以将 props 设置为一个对象,对象内容会被设置为组件属性这种方式常用来配置静态参数。
(2)然后页面组件这边获取数据方式和前面一样
(1)我们还可以创建一个函数返回 props,在函数中对参数值进行处理或者将静态值与基于vue路由参数的值结合。
(2)这里假设我们使用 JS 进行跳转代码如下:
(3)目标页面组件代码,以及运行结果如下:
}
由于vue路由参数参数数据中的斜杠,angular2vue蕗由参数无法正常工作 相关文章
}