تولید فایل اکسل از محتوای جیسون با کتابخانه xlsx

تعداد بازدید ها : 4 بازدید
 تولید فایل اکسل از محتوای جیسون با کتابخانه xlsx

اگر با پلتفرم Vuejs 3 Vite در حال تولید یک وب اپلیکیشن هستند و مایلید محتویات جدولی را با فرمت اکسل در خروجی ذخیره نمایید ، می توانید طبق مراحل زیر عمل کنید .

  1. نصب کتابخانه xlsx:

ابتدا کتابخانه xlsx را با استفاده از npm نصب کنید:

npm install xlsx
  1. ایجاد و دانلود فایل اکسل:

در اینجا یک مثال از کد برای ایجاد و دانلود فایل اکسل با استفاده از داده‌های شما آورده شده است:

<template>
  <div>
    <button @click="exportToExcel">خروجی اکسل</button>
  </div>
</template>

<script>
import * as XLSX from 'xlsx';

export default {
  name: 'ExportExcel',
  data() {
    return {
      jsonData: [
        {
          NRow: 1,
          NTmpDocNu: 1469552,
          NYear: 1402,
          SAccCode: "تملک دارایی‌های سرمایه‌ای ",
          SDocDate: "1402/01/21",
          Status: "بي حساب",
        },
        {
          NRow: 2,
          NTmpDocNu: 1469553,
          NYear: 1402,
          SAccCode: "پرداخت بدهی های معوق ",
          SDocDate: "1402/01/20",
          Status: "بدهکار",
        },
      ],
    };
  },
  methods: {
    exportToExcel() {
      const worksheet = XLSX.utils.json_to_sheet(this.jsonData);
      const workbook = XLSX.utils.book_new();
      XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');

      // خروجی اکسل را به باینری تبدیل کنید
      const excelBuffer = XLSX.write(workbook, {
        bookType: 'xlsx',
        type: 'array',
      });

      // دانلود فایل اکسل
      this.saveAsExcelFile(excelBuffer, 'ExportedData');
    },
    saveAsExcelFile(buffer, fileName) {
      const data = new Blob([buffer], {
        type: 'application/octet-stream',
      });

      const link = document.createElement('a');
      link.href = URL.createObjectURL(data);
      link.download = `${fileName}.xlsx`;
      link.click();
    },
  },
};
</script>

در این مثال:

  • داده‌ها در متغیر jsonData ذخیره شده‌اند.
  • تابع exportToExcel از کتابخانه xlsx برای تبدیل داده‌ها به فایل اکسل استفاده می‌کند.
  • تابع saveAsExcelFile فایل اکسل را به صورت باینری ذخیره و دانلود می‌کند.
می خوانم   Stagger Animation
محمدمجتبی جوارشکیان

محمدمجتبی جوارشکیان

من محمدمجتبی جوارشکیان ، کارشناس IT و فعال اجتماعی هستم و در حوزه معماری ، طراحی ، تحلیل گری ، مدلسازی و توسعه ی محیط های نرم افزاری فعالیت دارم. همانند سایر کارشناسان IT در تلاشم تا دنیا جای زیباتری برای زندگی باشد. بسیار خوشحال می شوم من را از انتقادات ، پیشنهادات و نظرات خود مطلع فرمایید. آدرس ایمیل : mjfakhr@yahoo.com

ارسال یک پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

یک × دو =