Skip to content

Instantly share code, notes, and snippets.

@uno-de-piera
Last active June 4, 2019 18:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save uno-de-piera/8786c344ba3468f761c51832bdd7be6f to your computer and use it in GitHub Desktop.
Save uno-de-piera/8786c344ba3468f761c51832bdd7be6f to your computer and use it in GitHub Desktop.
import XLSX from 'xlsx';
export default {
methods: {
exportUsersToExcel (rows) {
let formattedRows = [];
if (rows.length > 0) {
const self = this;
rows.forEach(function (user) {
formattedRows.push({
username: user.username,
firstname: user.firstname,
lastname: user.lastname,
email: user.email,
phone_number: user.phone_number,
active: user.active == 1 ? 'Activado' : 'Desactivado',
role: self.$_.has(user, 'role.name') ? user.role.name : '',
})
})
}
let data = XLSX.utils.json_to_sheet(
formattedRows,
{
header: ['username', 'firstname', 'lastname', 'email', 'phone_number', 'active', 'role']
}
)
data['A1'].v = 'Usuario';
data['B1'].v = 'Nombre';
data['C1'].v = 'Apellidos';
data['D1'].v = 'Correo electrónico';
data['E1'].v = 'Teléfono';
data['F1'].v = 'Activado';
data['G1'].v = 'Rol';
const workbook = XLSX.utils.book_new()
const filename = 'usuarios';
XLSX.utils.book_append_sheet(workbook, data, filename)
XLSX.writeFile(workbook, `${filename}.xlsx`)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment