Red de conocimiento informático - Material del sitio web - Cómo utilizar vue-resource para establecer una devolución de llamada de tiempo de espera

Cómo utilizar vue-resource para establecer una devolución de llamada de tiempo de espera

En realidad, VueResource todavía tiene algunos errores, así que tenga tiempo para escribir un PR...

Al estudiar el código fuente, hay varias formas de lograr lo que desea, la primera es establecer un tiempo de espera, que desencadenar interceptor de tiempo de espera

Este es el interceptor de tiempo de espera original

función predeterminada de exportación (solicitud, siguiente) {

var timeout;

/ / Si el valor está establecido, inicia el temporizador

if (request.timeout) {

timeout = setTimeout(() => {

// Allí Hay un problema aquí. El autor escribió request.abort(), pero cancel() no tiene abort(), pero aquí se usa cancel()

// Entonces, cuando se activa el tiempo de espera, Will. error

// Incluso si se aborta, la solicitud solo se cancelará y no se devolverá nada

// Como puede ver, el estado statusText está vacío

// Y statusText no está disponible en absoluto

// Pero no está disponible en absoluto

// Así que no puedes usarlo

request.cancel ();

}, request.timeout);

}

siguiente((respuesta) => {

clearTimeout(timeout );

});

}

Sin modificar el código fuente, tenemos que omitir el interceptor de tiempo de espera original e implementar uno nosotros mismos. El proceso del interceptor de tiempo de espera, afortunadamente, el autor proporciona un método para agregar un interceptor personalizado. El siguiente es mi método de implementación. Puede cambiarlo a otros que satisfagan sus necesidades. Hay dos formas. Puede cambiar a otro método que se adapte a sus necesidades.