Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

182
Visualizações
'TypeError: No se pueden leer las propiedades de undefined (leyendo 'getters')' ocurre en vue-test-utils

Estoy probando el proyecto Vue con vue-test-utils y jest.

 ... export default Vue.extend({ components: { MemoInputAndButton, DomeMemoLine }, data (): { memoLineList: Array<IMemoLine> } { return { memoLineList: [] } }, computed: { ...mapGetters('fraudTransactionState', { fraudTransactionDetail: FraudTransactionGetters.FraudTransactionDetail }) }, created: async function () { await this.setMemoLineList() }, methods: { ...mapActions('fraudTransactionState', { postFraudTransactionMemo: FraudTransactionActions.PostFraudTransactionMemo }), async onMemoInputted (input: string): Promise<void> { await this.postMemo(input) }, ...

MemoTimelineSection.vue

Utiliza vuex en módulos con espacio de nombres: ¡verdadero!

 const localVue = createLocalVue() localVue.use(ElementUI) localVue.use(Vuex) describe('MemoTimelineSection', () => { const div = document.createElement('div') div.id = 'root' document.body.appendChild(div) let wrapper let getter = { 'FRAUD_STATICS': () => { }, 'FRAUD_TRANSACTIONS': () => { }, 'FRAUD_TRANSACTION_DETAIL': () => { } } let store beforeEach(() => { ... const div = document.createElement('div') div.id = 'root' document.body.appendChild(div) ... store = new Vuex.Store({ modules: { fraudTransactionState: { getter, namespaced: true } } })

MemoTimelineSection.test.js

y la tienda vuex real es

 export const store: StoreOptions<RootState> = { state: { ... }, mutations: { ... }, actions: {}, modules: { transfersStore, fraudTransactionState }, getters: {} } export default new Vuex.Store<RootState>(store)

índice.ts

Cuando ejecuto el archivo de prueba,

 ● Test suite failed to run TypeError: Cannot read properties of undefined (reading 'getters') 33 | console.log('run') 34 | > 35 | export default new Vuex.Store<RootState>(store) | ^ 36 |

ocurre.

Cuando elimino mapGetters y mapActions del código de Vue, este error no aparece, así que creo que está relacionado con mapGetters o mapActions o algo relacionado con Vuex...

El otro código, que no usa la tienda vuex en los módulos (solo en las raíces) y está compuesto por un componente de clase vue, se ejecuta correctamente aunque también prueba vuex.

¿Cómo puedo resolverlo? Gracias por adelantado.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda