Cómo acceder a la Vue Instancia desde el interior de una función argumento?

Yago Massiah:

Así sede fuera de este hilo he implementado este fragmento:

methods: {
    checkSearchString: _.debounce( string => {
         console.log("watcher firing for search!");
         console.log(this.searchInput);
        this.$emit("search", this.searchInput);
    }, 2000)
},
watch: {
    searchInput : "checkSearchString"
}

pero como comentarios sobre la respuesta aceptada señalaron, "esto" no apunta a la instancia vue, así que no puedo acceder a ella. ¿Cómo podría acceder a la instancia vue dentro de la función? o ¿cómo podría resolver esto mejor?

el objetivo principal aquí es utilizar _.debounce y un vigilante para disparar la búsqueda cuando el usuario deja de escribir, y lograr que de una manera limpia.

Edit: Gracias por señalar el uso de la función de flecha, como el problema de contexto aquí, los usuarios en el otro hilo hicieron punto a esta causa de los problemas, pero yo no entiendo por qué

ahogarse:

se utiliza la función de flecha, que la pérdida de contexto. hacerlo con función anónima normales

watch: {
    searchInput : "checkSearchString"
}

methods: {
    checkSearchString: _.debounce( function(value) {
         console.log("watcher firing for search!");
         console.log(value);
        this.$emit("search", value);
    }, 2000)
},

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=392447&siteId=1
Recomendado
Clasificación