Доступ к магазину из загрузочного файла Quasar - PullRequest
0 голосов
/ 13 марта 2020

Я использую Quasar и у меня есть в загрузочном файле (в основном то же, что и основной. js):

Vue.use(VueCurrencyFilter, {
  symbol: '$',
  thousandsSeparator: '.',
  fractionCount: 2,
  fractionSeparator: ',',
  symbolPosition: 'front',
  symbolSpacing: true
})

Я могу сделать в моем компоненте:

{{purchaseOrderTotal | currency(currentLocation.currency)}}

currentLocation - это состояние в моем магазине, которое называется mapState.

currentLocation.currency - это валюта для опции symbol.

Это работает, но означает, что мне нужно передать параметр в каждом компоненте .

Есть ли способ вызвать currentLocation.currency в файле js, который будет использоваться по умолчанию?

Ответы [ 2 ]

1 голос
/ 14 марта 2020

Вы можете импортировать хранилище Vuex в любой модуль:

import store from '@/store';

И использовать его в этом файле так же, как если бы вы использовали его в компоненте:

let currency = store.state.currentLocation.currency;

Это это тот же this.$store объект, который доступен через компоненты.

0 голосов
/ 14 марта 2020

Я забыл об анатомии загрузочных файлов в Quasar:

import VueCurrencyFilter from 'vue-currency-filter'

export default ({ Vue, store }) => {

    Vue.use(VueCurrencyFilter,
      .......
};

хранилище нужно было экспортировать, а не импортировать.

...