Written by Jieun
Home
  • 전체 (129)
    • Git (1)
    • React, Next (57)
    • HTML & CSS (2)
    • JavaScript, TypeScript (24)
    • Node.js (11)
    • MongoDB (4)
    • AWS (2)
    • 코딩테스트, 알고리즘 (17)
    • etc (8)
    • 일상 (1)
블로그 내 검색

Written by Jieun

👩🏻‍💻 내 마음대로 Today I Learned

  • React, Next

    [React] 데이터 엑셀 저장 기능 구현하기

    2023. 12. 29.

    by. 지은이: 김지은

    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

    댓글

    관련글

    • [React] 올바른 초기값 설정하기 2024.01.17
    • [React] React로 모달창 구현하기 2024.01.02
    • [RN] React Native 스크롤 설정하기 (ScrollView와 FlatList) 2023.12.08
    • [RN] React Native 환경변수 설정(env) 2023.12.06
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Designed by Nana
블로그 이미지
지은이: 김지은

티스토리툴바