Comment accéder à JSON objets dans l'application vue.js Je suis nouveau dans ce domaine
import json from './json/data.json'
le fichier JSON est chargé et maintenant je dois accéder aux objets qu'il contient
Assignez simplement l'importation à une propriété de données
_<script>
import json from './json/data.json'
export default{
data(){
return{
myJson: json
}
}
}
</script>
_
puis parcourez la propriété myJson
de votre modèle à l'aide de _v-for
_
_<template>
<div>
<div v-for="data in myJson">{{data}}</div>
</div>
</template>
_
NOTE
Si l'objet que vous souhaitez importer est statique, c'est-à-dire qu'il ne change pas, son affectation à une propriété de données n'aura aucun sens car il n'a pas besoin d'être réactif.
Vue convertit toutes les propriétés de l'option data
en accesseurs/générateurs pour que les propriétés soient réactives. Il serait donc inutile et inutile pour vue de configurer des getters/setters pour des données qui ne vont pas changer. Voir Réactivité en profondeur .
Ainsi, vous pouvez créer une option personnalisée comme suit:
_<script>
import MY_JSON from './json/data.json'
export default{
//custom option named myJson
myJson: MY_JSON
}
</script>
_
parcourez ensuite l'option personnalisée de votre modèle à l'aide de $options
:
_<template>
<div>
<div v-for="data in $options.myJson">{{data}}</div>
</div>
</template>
_
Si votre fichier ressemble à ceci:
[
{
"firstname": "toto",
"lastname": "titi"
},
{
"firstname": "toto2",
"lastname": "titi2"
},
]
Tu peux faire:
import json from './json/data.json';
// ....
json.forEach(x => { console.log(x.firstname, x.lastname); });