【问题标题】:Parameter prefix in Vue.js route pathVue.js 路由路径中的参数前缀
【发布时间】:2016-09-28 23:51:33
【问题描述】:

tl;博士:

在 Vue.js vue-router 中,我们如何使路由 param 立即跟随非 / 字符并且仍然被解析?

--

解释

我希望一些网址看起来像:

example.com/_myuser
example.com/_otheruser

在 Flask 中,这可以通过以下方式完成:

@app.route('/_<username>')
def user_page(username):
    pass

print(url_for('user_page', username='myuser'))
# example.com/_myuser

但我无法在vue-router 中找到实现此功能的方法。当我尝试时:

router.map({
    '/_:username': {
        name: 'user-page',
        component: User
    }
})

username 参数根本无法解析(无论是在模板中,还是在浏览器的地址栏中键入时):

<a v-link="{ name: 'user-page', params: { username: 'myUser' } }">Hello</a>

expected      <a href="/_myUser">Hello</a>
result        <a href="/_:username">Hello</a>

【问题讨论】:

    标签: javascript routes vue.js vue-router


    【解决方案1】:

    在 vue 1.* 中这是不可能的,但在 2.0 中,这可以通过使用 /(@):username 来完成。

    【讨论】:

      【解决方案2】:

      更新:我今天在vue-router 中要求的内容是不可能的。

      请参阅https://github.com/vuejs/vue-router/issues/499 了解相关的 GitHub 问题以及实现此功能的可能方法。

      【讨论】:

      • @rafaelmsantos 好吧,这个答案不是对问题的补充,它确实提供了一个答案,比如“有可能吗?-> 不,目前不可能”。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-04
      • 2018-01-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 2014-05-27
      • 2015-12-10
      相关资源
      最近更新 更多