-
728x90
엄청 간단한 엑셀 저장 기능을 구현할 수 있는 라이브러리를 발견했다!
https://www.npmjs.com/package/xlsx
xlsx
SheetJS Spreadsheet data parser and writer. Latest version: 0.18.5, last published: 2 years ago. Start using xlsx in your project by running `npm i xlsx`. There are 4230 other projects in the npm registry using xlsx.
www.npmjs.com
npm install xlsx
xlsx 라이브러리를 설치해주기
다른 기능도 많지만, 정말 간단하게 버튼을 클릭하면 데이터를 엑셀로 저장하는 기능을 구현하기 위해 아래처럼 코드를 작성할 수 있다.
import React from 'react'; import * as XLSX from "xlsx/xlsx.mjs"; const ExcelDownload = () => { const fileName = '파일 이름'; // 다운로드할 파일 이름 const data = [ { name: "John", age: 30, city: "New York" }, { name: "Jane", age: 25, city: "San Francisco" }, ]; const handleDownload = () => { const datas = data?.length ? data : []; // data가 없으면 빈 배열 const worksheet = XLSX.utils.json_to_sheet(datas); // JSON 데이터를 시트로 변환 const workbook = XLSX.utils.book_new(); // 엑셀 파일 생성하기 XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1"); // 생성된 엑셀 파일에 'Sheet1' 시트 추가 XLSX.writeFile(workbook, fileName ? `${fileName}.xlsx` : "data.xlsx"); // 엑셀 파일로 저장 후 fileName 이름으로 저장 }; return ( <> <button onClick={handleDownload}> 엑셀 저장 </button> </> ); }; export default ExcelDownload;
data가 엑셀로 잘 저장이 된다!
'React, Next' 카테고리의 다른 글
[React] 올바른 초기값 설정하기 (0) 2024.01.17 [React] React로 모달창 구현하기 (0) 2024.01.02 [RN] React Native 스크롤 설정하기 (ScrollView와 FlatList) (1) 2023.12.08 [RN] React Native 환경변수 설정(env) (0) 2023.12.06 [RN] React Native 네비게이션 (2) 2023.12.05 댓글