【发布时间】:2017-11-30 17:08:42
【问题描述】:
是否可以以声明方式将查询值绑定到道具?
我想让/my-foo?bar=my-bar 传递道具{foo: "my-foo", bar: "my-bar"}。
我目前正在使用这样的东西:
export default new Router({
routes: [
{
path: "/:foo",
name: "Foo",
component: FooPage,
props: route => ({ foo: route.params.foo, bar: route.query.bar})
}
]
});
我正在寻找类似的东西:
export default new Router({
routes: [
{
path: "/:foo?bar=:bar",
name: "Foo",
component: FooPage,
props: true
}
]
});
我正在使用 vue-router 2.3.1
【问题讨论】:
-
不幸的是,目前的答案是“否”。 Vue Router 使用
path-to-regexp进行路径匹配。他们的文档指出:“path-to-regexp 返回的 RegExp 旨在与路径名或主机名一起使用。它无法处理 URL 的查询字符串或片段。” -
将查询参数解析放在组件的
mounted中如何?
标签: javascript vue.js vuejs2 vue-router