Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

141
Views
¿Hay alguna manera de agregar Vuex a la función de instalación del complemento Vue y compartir el estado entre sus componentes?

Básicamente, quiero usar mi propia tienda dentro de vue install y los componentes de vue que agrego a través de mi complemento vue.

Descubrí que puedo usar vuex dentro de la función de instalación real y hacer todo lo que vuex puede hacer, pero parece que no puedo pasarlo a mis componentes personalizados.

¿Hay alguna otra forma de agregar eventos globales en mis SFC que agregue dentro de mi complemento?

 import MyComponent from './MyComponent.vue' import MySecondComponentfrom './MySecondComponent.vue' import Vuex from 'vuex' import store from './store.js' const CustomFn = function(message, options) { this.$store.dispatch("someRandomAction", { message, options }) } export default { install(Vue, options) { if (this.installed) { return } this.installed = true Vue.use(Vuex) const storeInstance = new Vuex.Store(store) Vue['store'] = storeInstance // is there a way to add storeInstance to my own components and share one state between them? Vue.component('MyComponent', Vue.extend(MyComponent)) Vue.component('MySecondComponent', Vue.extend(MySecondComponent)) Vue.prototype['$doStuff'] = CustomFn Vue['doStuff'] = CustomFn } }

El problema es que no puedo pasar esta instancia de la tienda Vuex dentro de MyComponent y compartir la misma tienda entre varios componentes.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Se supone que las propiedades de los componentes personalizados se proporcionan globalmente en Vue 2 asignándolas a Vue.prototype porque las instancias de los componentes heredan prototípicamente de él.

new Vuex.Store(store) es un error si store ya es una tienda Vuex y no un objeto simple que contiene opciones de tienda. Esto resultará en un mal funcionamiento de la tienda como se muestra en esta pregunta . Incluso si store aún no es una instancia de la tienda, tiene sentido convertirla en una instancia y exportarla en un módulo separado para que pueda importarse en módulos que no sean componentes.

Debería ser:

 Vue.prototype.$store = store
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!