搜索

首页  >  问答  >  正文

"Nuxt.js:使用URL传递ID"

<p>我想要获取用户ID,所以我有一个下拉按钮=</p> <pre class="brush:html;toolbar:false;"><v-menu transition="slide-y-transition" bottom offset-y > <template v-slot:activator="{ on, attrs }" > <v-btn color="primary" dark v-bind="attrs" v-on="on" > 列表 </v-btn> </template> <v-list> <v-list-item v-for="(item, index) in items" :key="index" :to="item.url" > <v-list-item-title>{{item.title}}</v-list-item-title> </v-list-item> </v-list> </v-menu> </pre> <p>和这个数据:</p> <pre class="brush:html;toolbar:false;"><script> export default { data: () => ({ items: [ { title: '用户列表', url: '`/user/function/listUser/${route.params.id}`' }, { title: '用户结构', url: '`/user/function/structUser/${route.params.id}`' } ] }) } </script> </pre> <p>我的意图是发送用户ID。这样,我实际上可以通过<code>route.params.id</code>获得</p> <pre class="brush:js;toolbar:false;">url: '`/user/function/structUser/${route.params.id}`' </pre> <p>不起作用,我做错了什么?</p>
P粉511985082P粉511985082460 天前529

全部回复(2)我来回复

  • P粉060112396

    P粉0601123962023-08-26 23:14:24

    1. 模板字符串只使用反引号,但你的字符串同时使用了单引号和反引号。

    2. 替换值(route.params.id)引用了一个在你的示例中似乎未定义的route变量。我认为你想要访问this.$route,所以实际的替换应该是this.$route.params.id

    items数组应该像这样:

    export default {
      data() {
        return {
          items: [
            {
              title: 'List User',
              url: `/user/function/listUser/${this.$route.params.id}`
            },
            {
              title: 'structure User',
              url: `/user/function/structUser/${this.$route.params.id}`
            }    
          ]
        }
      }
    }
    

    演示

    回复
    0
  • P粉293341969

    P粉2933419692023-08-26 09:53:54

    这是一个例子

    `/user/function/structUser/${this.$route.params.id}`
    

    另外,也许尝试在一个computed中使用它,因为它可能不是计算属性。

    回复
    0
  • 取消回复