1
votes

Obtenir la variable Vuejs Store par valeur de chaîne

J'essaie d'obtenir une variable de magasin vuejs comme celle-ci:

const pathFile = `#pathFile _ $ {this.devisDTO.code_produit}`; const pathApp = this. $ store.state.parameters.urls. $ {pathFile};

Donc, dans la deuxième ligne, $ {pathFile} n'est pas interprété de cette façon. Pourriez-vous nous aider à écrire ceci?


1 commentaires

essayez ceci. $ store.state.parameters.urls [pathFile]


4 Réponses :


2
votes

pathFile est une variable normale. Retirez-y les crochets.

const pathFile = `#pathFile_${this.devisDTO.code_produit}`;
const pathApp = this.$store.state.parameters.urls.pathFile;


0 commentaires

0
votes

Ce n'est pas du javascript valide. Je suppose que vous vouliez écrire ce qui suit:

const pathFile = `#pathFile_${this.devisDTO.code_produit}`;
const pathApp = this.$store.state.parameters.urls[pathFile];


0 commentaires

3
votes

En JavaScript, $ {string_name} est utilisé dans les chaînes de modèle (1). Si vous souhaitez accéder à la valeur d'un dictionnaire basé sur le contenu d'une chaîne, vous devez utiliser la syntaxe des crochets. Dans votre cas

this.$store.state.url[path_file]

Sur une note latérale, je vous suggère d'utiliser des getters de magasin pour accéder aux variables.

(1): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals


0 commentaires

1
votes

vous devez modifier votre code en supprimant les crochets de parameters.urls. $ {path File} aussi .urls.path File;

voici le code ..

const pathFile = `#pathFile_${this.devisDTO.code_produit}`;
const pathApp = this.$store.state.parameters.urls.pathFile;

p>


0 commentaires