Comparte:
Exportar Excel desde VueJS
Buenas tardes Jorge, he exportado de manera exitosa un archivo excel con puro Laravel, sin embargo no encuentro la manera de realizarlo desde VueJS
// Metodo VueJS
exportarComisionesJV(){
this.mostrarProgressBar();
var url = this.ruta + '/reportes/exportarComisionesJV';
axios.get(url, {
params: {
'nidempresa' : parseInt(sessionStorage.getItem("nIdEmpresa")),
'nidsucursal' : this.formFiltro.nidsucursal,
'nidjefeventas' : this.formFiltro.nidjefeventas,
'nidcronograma' : this.formFiltro.nidcronograma,
'opcion' : 1
}
}).then(response => {
//RESPUESTA
$("#myBar").hide();
}).catch(error => {
console.log(error);
if (error.response) {
if (error.response.status == 401) {
swal('VUELVA INICIAR SESIÓN - SESIÓN INHAUTORIZADA - 401');
location.reload('0');
}
}
$("#myBar").hide();
});
},
//Controlador
public function exportarComisionesJV(Request $request)
{
$nidempresa = $request->nidempresa;
$nidsucursal = $request->nidsucursal;
$nidjefeventas = $request->nidjefeventas;
$nidcronograma = $request->nidcronograma;
//=================== OBTENER EL LAS COMISIONES DE LOS AC POR JV ===================
$arrayComision = DB::select('exec [usp_Reporte_DescuentosOtorgados_GetComisiones_JV] ?, ?, ?, ?',
[
$nidempresa,
$nidsucursal,
$nidjefeventas,
$nidcronograma
]);
return (new ComisionJV)->obtenerData($arrayComision)->download('comision_jv.xlsx');
}
¿Como podría exportarlo desde VueJS?, muy amable
Cambie solamente el params.
Luego todo funciona perfectamente, gracias.
Otra solución que encontré fue la siguiente:
- Donde mantengo la estructura de la petición AXIOS.
- Instancio un objeto Blob donde paso el response y especifico el MimeType.
Capaz, me comentas cual es la mejor opción, saludos y gracias por la pronta ayuda.