Maison  >  Questions et réponses  >  le corps du texte

Comment obtenir dynamiquement une liste de valeurs de tableau basée sur « id » dans Vuejs ?

**User.vue**

<template>
  <div>
    <div v-for="list in lists" :key="list.id">{{ list.val }} {{ list.kk }}</div>
  </div>
</template>

<script>
import { datalist } from "./datalist";
export default {
  name: "User",
  data() {
    return {
      lists: datalist,
    };
  },
};
</script>
**datalist.js**

export const datalist = [
  { id: 1, val: "11", kk: "potter" },
  { id: 2, val: "22", kk: "james" },
  { id: 3, val: "55", kk: "limda" },
  { id: 4, val: "77", kk: "stepen" }
];
**HelloWorld.vue**

<template>
  <div>
    <b>Vuejs dynamic routing</b>
    <div v-for="item in items" :key="item.id">
      <b>{{ item.id }}.</b> &nbsp;&nbsp;&nbsp;
      <router-link :to="{ name: 'UserWithID', params: { id: item.id } }">
        {{ item.kk }}
      </router-link>
    </div>
    <br /><br /><br />

    <b> {{ $route.params.id }}</b>
    <User />
  </div>
</template>

<script>
import User from "./User.vue";
import { datalist } from "./datalist";
export default {
  name: "HelloWorld",
  components: {
    User,
  },
  data() {
    return {
      items: datalist,
    };
  },
};
</script>

Je travaille sur le routage dynamique où en cliquant sur chaque valeur du tableau, j'obtiens le "id" dynamiquement. (Comme 1,2,3,4,5...)

Maintenant, je veux afficher les valeurs du tableau. Spécifique à l'identifiant uniquement. Comme...

Si je clique sur id:1, j'ai juste besoin d'obtenir la valeur spécifique du tableau liée à id:1. Situations similaires pour 2, 3, 4...

Le problème en ce moment est que si je clique sur "identifiant du tableau:2" ou sur n'importe quelle valeur d'identifiant... alors j'obtiendrai la liste complète des valeurs du tableau.

1

11 Potier 22 Jacques 55 lignes 77 degrés

Code fonctionnel complet : - https://codesandbox.io/s/proud-fast-sokui?file=/src/components/HelloWorld.vue

P粉515066518P粉515066518206 Il y a quelques jours438

répondre à tous(1)je répondrai

  • P粉276577460

    P粉2765774602024-03-27 20:13:19

    Vous pouvez trouver les informations utilisateur dont vous avez besoin via User.vue中的$route.params.id. Exemple User.vue :

    {{ item }}
    ... computed: { user: function () { return this.lists.find((item) => item.id === this.$route.params.id); }, }

    Démo codesandbox

    répondre
    0
  • Annulerrépondre