Как я могу решить эту ошибку с геттерами при тестировании компонента vue? - PullRequest
0 голосов
/ 29 декабря 2018

Когда я пытаюсь протестировать компонент ModUsuario.vue, у меня возникают ошибки, связанные с «получателями».

Репозиторий GitHub: https://github.com/SergioFerrera/jest_vuejs

Код ошибки:

TypeError: Cannot read property 'getters' of undefined

ModUsuario.vue

<script>
export default {
  data() {
    return{
    }
  },
  created(){
  },
  computed: {
    getName() {
      return this.$store.getters.name
    },
    getSurname() {
      return this.$store.getters.surname
    },
    getBirthdate() {
      return this.$store.getters.birthdate
    },
    getGenre() {
      return this.$store.getters.genre
    },
    getEmail() {
      return this.$store.getters.email
    }
  }
}
</script>

modusuario.test.js

import { mount } from 'vue-test-utils'
import ModUsuario from "../../src/app/components/ModUsuario.vue";

describe("ModUsuario.vue", () => {    
  const wrapper = mount(ModUsuario);

1 Ответ

0 голосов
/ 30 декабря 2018

Я посмотрел на ваш репо. Здесь вы импортируете хранилище из хранилища папок, и эта папка не находится в репо.Также есть некоторые предложения по поводу вашего кода - лучше использовать mapGetter helper - так что вы избежите многих одинаковых вычисляемых свойств.

Также хорошей практикой будет разделение кода vue app index.js - routeдолжен быть в отдельном файле.

Также читайте о глобальном импорте всех компонентов.Лучше импортировать их туда, где это нужно.Потому что вы так и сделали - ваш начальный объем js-кода будет очень большим

...