Da Apollo-Abfragen an Ihre Komponente gebunden sind, folgen sie dem Lebenszyklus Ihrer Komponenten. Wenn sich Ihre Route ändert (verschiedene Komponenten werden gerendert), werden Ihre alten Komponenten gelöscht und daher auch Ihre alten Abfragen entfernt.
Dies wird in Vue Apollo durch dieses Mixin erledigt .
Schauen Sie sich den folgenden Teil an:
export function installMixin (Vue, vueVersion) {
Vue.mixin({
// Other irrelevant code for this question
destroyed: destroy,
})
}
Dies bedeutet, dass es an das 'zerstörte' Ereignis jeder Vue-Komponente gebunden ist, das dann die Zerstörungsfunktion auslöst (wie in der Vue-API-Referenz definiert ):
function destroy () {
if (this.$_apollo) {
this.$_apollo.destroy()
}
}
Dieser Prozess stellt also sicher, dass Ihre Abfragen zerstört werden und nicht mehr wirksam sind, wenn Ihre Komponente zerstört wird.
Ich hoffe das beantwortet deine Frage