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

178
Vistas
Nuxt JS use injected function from plugin in another plugin file

I'm using Nuxt JS's inject function to inject a function into my page for code reusability. I'd like to use the function in another plugin file and can't seem to get the function in there.

Here's my set up:

  • plugins/utils/tracking.js
function setCookiePrefix () {
  return 'fudge__'
}

function getCookie (app, name) {
  try {
    const prefix = setCookiePrefix()
    const cookie = app.$cookies.get(`${prefix}${name}`)

    if (!cookie || cookie == '') {
      throw 'cookie not set'
    }

    return cookie
  } catch (err) { }

  return null
}

export default function ({ app, store, context }, inject) {

  /*
  * Get just the affiliate (cpm_id OR affiliate)
  * examples: "my_brand", "blah"
  */
  inject('getAffiliate', () => {
    const affiliate = getCookie(app, 'affiliate')
    const brand = getBrand(store)

    if (!affiliate) return brand

    return affiliate
  })

}

And the file I'm trying to utilise the getAffiliate function in from my tracking.js file:

  • plugins/init-brand.js
export default async function ({ app, route, store }) {
  const affiliate = app.$getAffiliate()
  console.log(affiliate) <-- undefined
}

I've tried:

  • app.$getAffiliate()
  • this.$getAffiliate() <-- this works in a Vue file
  • $getAffiliate()
  • this.getAffiliate()

What am I missing to access my getAffiliate function in another plugin file?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

I have an api plugin with some axios set up. I can load it inside another plugin file like this:

export default ( {$api} , inject) => {
  const service = new SomeService($api)
  inject('someService', SomeService)
}

So in your case that would be:

export default async function ({ app, route, store, $getAffiliate }) {
  const affiliate = $getAffiliate()
  console.log(affiliate)
}

Not sure if this is the right way, but it works for me.

about 4 years ago · Juan Pablo Isaza Denunciar
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