Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

261
Vistas
'establecer' en proxy: la trampa devolvió falso para la propiedad 'widgets'

Tengo un problema con vue3/pinia. Ver.vue en la parte inferior:

 <script setup> import useAccount from '../stores/account.js'; import { ref } from 'vue'; import LocaleSwitch from '../components/LocaleSwitch.vue'; import { onMounted } from 'vue'; const { user, logout, widgets } = useAccount(); const showWidgets = ref(widgets); onMounted( function showWidgetslog() { console.log('showWidgets - ', showWidgets) } ) </script> <template> <LocaleSwitch /> <article> <section> {{ $t('account') }}: {{ user.fullName }} </section> <button class="primary" @click="logout">Logout</button> </article> </template>

En View.vue, estoy intentando mostrar en la consola showWidgets, pero cada vez que aparece el error 'establecer' en el proxy: la trampa devolvió falso para la propiedad 'widgets'.

Este View.vue llama cuando llamo a la página principal en el enrutador:

 routes: [{ path: '/', name: 'account', meta: { title: 'Main' }, component: AccountView, async beforeEnter(to, from, next) { const { fetchDesktop, id } = useAccount(); const { fetchStaffPerson } = useStaff(); await fetchDesktop(); await fetchStaffPerson(id); return next(); }, },

Antes de renderizar la página principal (View.vue) llama a la tienda pinia:

 import { defineStore } from 'pinia'; import router from '../router'; import api from '../services/api.js'; export default defineStore({ id: 'account', state: () => ({ counters: {}, widgets: {}, }), getters: { token: () => localStorage.getItem('token'), user: () => JSON.parse(localStorage.getItem('user')), id() { return this.user.id }, club: () => localStorage.getItem('club'), widgets: (state) => state.widgets, }, actions: { async fetchDesktop(widgetIndex) { try { let params = { firstCount: 0, secondCount: 0, thirdCount: 0, club: this.club, }; if (widgetIndex == "first") { params.firstOffset = this.widgets[widgetIndex].items.length; params.firstCount = 30; } if (widgetIndex == "second") { params.secondOffset = this.widgets[widgetIndex].items.length; params.secondCount = 30; } if (widgetIndex == "third") { params.thirdOffset = this.widgets[widgetIndex].items.length; params.thirdCount = 30; } this.widgets = await api("desktop.get", params); } catch ({ message }) { console.error(message); } }, } });

¿Por qué aparece este error? Lógicamente, supongo, está bien. Hay un enlace de enrutador, que llama a la acción en la tienda pinia (fetchDesktop), y luego calcula la página principal de representación (View.vue)

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda