Как сделать Обозреватель, возвращаемый геттерами в моем шаблоне данных - PullRequest
0 голосов
/ 30 января 2019

Я делаю вызов ajax в моей модели.Ответ хранится в моем состоянии Vuex.Мой шаблон использует состояние с использованием геттеров.Но получатель возвращает «наблюдателя».

Таким образом, мой шаблон не показывает ничего в таблице данных.

Модель :менение.js

export const getUsageFiles = async () => {
  const path = '/usage/files/';

  return (await rest.request(path)).body;
};

Магазин:UsageFiles.js

import {
  prop,
} from 'ramda';

state: {
    usageFiles: [],
},

getters: {
    usageFiles: prop('usageFiles'),
},

mutations: {
    updateUsageFiles(state, { file }) {
      state.usageFiles = file;
    },
},

actions: {
    async getUsageFiles() {
      let usageFile = [];

      usageFile = await usage.getUsageFiles();

      commit({
        file: usageFile,
        type: 'updateUsageFiles',
      });
    }
},

Vue: Usage.vue

data() {
    return {
      headers: ['A', 'B'],
    };
},

methods: {
    ...mapActions('usageFiles', [
      'getUsageFiles',
    ]),
}

computed: {
    ...mapGetters('usageFiles', [
      'usageFiles',
    ]),
},

async created() {
    await this.getUsageFiles();
    console.log('Getter : ', this.usageFiles); // Here it is the getter returning "observer"
}

HTML-шаблон:

v-data-table.data-table__body(
    v-if="usageFiles.length",
    :headers="headers",
    :items="usageFiles",
    :hide-headers="!usageFiles.length",
    :pagination.sync="pagination",
    :rows-per-page-items="paginationOptions",
    :loading="tableIsLoading",
)

Здесь «useFiles» не отображаются, потому что это«Наблюдатель» проверил в console.log (я не написал остальную часть кода шаблона, потому что он становится слишком длинным).

...