Note
Format file excel yang digunakan bisa diunduh di /public/static/example.xlsx. Jika format table yang diupload berbeda, maka akan error.
Library untuk membaca file excel menggunakan read-excel-file.
import readXlsxFile from "read-excel-file";
Secara default, file excel akan dibaca sebagai array of array. Agar formatnya menjadi JSON, maka perlu mendefinisikan schema table yang digunakan (baca).
export const schema = {
Nama: {
prop: "name",
type: String,
required: true,
},
"Tanggal Lahir": {
prop: "birthDate",
type: String,
required: true,
},
"Tahun Lahir": {
prop: "birthYear",
type: Number,
required: true,
},
Hobi: {
prop: "hobby",
type: String,
required: true,
},
Alamat: {
prop: "address",
type: String,
required: true,
},
Kelas: {
prop: "class",
type: String,
required: true,
},
Sekolah: {
prop: "school",
type: String,
required: true,
},
};
Kemudian masukkan schema digunakan.
readXlsxFile(event.target.files[0], { schema }).then(({ rows, errors }) => {
if (errors.length !== 0) {
console.log(errors);
return;
}
console.log(rows);
});