簡體   English   中英

從 Excel 中的客戶端應用程序導出 Firestore 數據

[英]Exporting Firestore data from Client app in Excel

我正在開發在線醫生預約移動應用程序。 我想在應用程序中添加一個界面,醫生可以在其中提取過去的預訂數據。 醫生有沒有什么功能可以把過去的所有預約數據導出到excel中。

只是我想要這個:-->

選擇一個日期范圍。 提取與該日期相關的所有文件。 將這些文檔的數據導出到 Excel 表的行中。 必填字段作為該 Excel 工作表的列。

是否有任何服務/方式/技巧可以用來做同樣的事情

如果您有服務器,那么您可以簡單地獲取數據並使用任何模塊將該數據寫入 Excel 文件。 如果您的應用程序是無服務器的,那么創建一個雲功能,它會為您做同樣的事情。 總有一些模塊可以為您做同樣的事情。

以下兩個示例均適用於 NodeJ。

對於 nodeJs=>> Xlsx 節點模塊

或者您可以簡單地使用“fs”將 JSON 寫入 excel。 例子

  1. npm i --save exceljs
  2. npm i --save firebase-admin
  3. 創建 index.js 文件

 var admin = require("firebase-admin"); const Excel = require('exceljs') var serviceAccount = require("service-account.json"); admin.initializeApp({ credential: admin.credential.cert(serviceAccount), databaseURL: "https://mind-next.firebaseio.com" }); const db = admin.firestore(); let workbook = new Excel.Workbook() let worksheet = workbook.addWorksheet('your export sheet name') worksheet.columns = [ {header: 'username', key: 'username'}, {header: 'creationTime', key: 'creationTime'}, {header: 'email', key: 'email'}, {header: 'lastSignInTime', key: 'lastSignInTime'}, {header: 'photoURL', key: 'photoURL'}, {header: 'providerId', key: 'providerId'} ] worksheet.getRow(1).font = {bold: true} async function getData() { const snapshot = await db.collection('your export firestore collection').get(); snapshot.forEach((doc,index) => { const rowIndex = index + 2 let e = doc.data() worksheet.addRow({ ...e, }) }); workbook.xlsx.writeFile('yourexportfilename.xlsx') } getData()

  1. 然后運行節點 index.js

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM