web-dev-qa-db-fra.com

Quelle est la meilleure façon de stocker les constantes à NUXT?

J'ai un projet NUXT (Vuejs) et je me demande comment stocker des constantes de mon projet? (environ 50 constantes).

Merci pour votre réponse. kaboume

12
Ricou

Je pense que @Birante est à peu près bien. Ce n'est pas parce que certains dossiers ne sont pas expédiés avec le plaque de chauffage, vous ne pouvez pas les ajouter. Cependant, je proposerais une structure comme telle,

|-- assets
|
|-- components
|   |-- Logo.vue
|   `-- index.js
|
|-- constants
|   |-- constants_002.js
|   |-- constants_001.js
|   `-- index.js
|
|-- layouts
|   |-- default.vue
|   `-- index.js
|
|-- middleware
|   `-- index.js
|
|-- pages
|   `-- index.vue
|
|-- plugins
|
|-- static
|
|-- store
|   `-- index.js
|
|-- test
|   `-- Logo.spec
|
`-- package.json

Puis configurez vos constantes de manière modulaire comme si vous feriez une autre partie de votre application.

constantes/Constantes_001.js

export const MY_FIRST_CONSTANT = 'is awesome'

constantes/Constantes_002.js

export const MY_SECOND_CONSTANT = 'is also awesome'

constantes/Index.js

export * from './constants_001';
export * from './constants_002';

Ensuite, vous pouvez importer vos constantes conformément à la convention utilisée dans votre application.

import { MY_FIRST_CONSTANT, MY_SECOND_CONSTANT } from '@/constants/'

C'est aussi une grande convention pour utils aussi que vous devez partager sur l'application :)

6
stwilz

J'utilise constante.js

   const api = "api";
   export default Object.freeze({
    api,
   });
1
Noni

il n'y a pas de meilleure façon dont cela dépend du projet et des besoins du projet et des besoins du projet.

dans certains de mon projet, je crée le dossier local et stocker des données comme breadcrumb et i18n dessus.

après cela Créer un fichier constants.js In local dossier et insérez simplement une constante dessus. comme ci-dessous

const X="X";
const Y="Y";

export {
  X,
  Y
}

après cela, pour simplement utiliser et n'avait pas besoin de les importer dans chaque fichier, j'ai besoin d'eux créer un plugin pour cela comme ci-dessous.

import * as Constants from '@/locale/constants';

export default ({ app }, inject) => {
    inject('constants', Constants)
}

après cela, je peux les utiliser dans chaque fichier nécessaire comme ci-dessous

this.$constants.X
1
Farshad Fahimi