nodejsはxlsxでexcel表をエクスポートします.
8699 ワード
nodejs+jsxlsxはファイルフローを使ってエクセルをダウンロードします.概要 1.インストール依存 .xlsxライブラリの導入 .クエリに必要なデータ .データをExcelテーブルの横軸に変換して示す .テーブルを作成する .データをシートに載せる .最後にファイルフローに対応する設定 を採用する..ファイル名などを設定する .中国語の頭がほしいです. 概要
本論文では、Node.jsの依存ライブラリでExcelファイルを処理し、主にjs-xlsxライブラリを利用してExcelファイルを処理します.
1.設置依存
くり:
データの種類がJsonなら、以下のようになります.
5.テーブルの作成
9.中国語の表がほしいです.
本論文では、Node.jsの依存ライブラリでExcelファイルを処理し、主にjs-xlsxライブラリを利用してExcelファイルを処理します.
1.設置依存
npm install xlsx
2.xlsxライブラリの導入const Excel = require ('xlsx')
3.クエリに必要なデータをエクスポートするくり:
const users = await this._User.findAll({
attributes:['firstName', 'lastName', 'email']
})
4.データをExcel表の横軸に変えて展示するデータの種類がJsonなら、以下のようになります.
let ws = Excel.utils.json_to_sheet(users)// users
データタイプが配列の場合、以下のようになります.let ws = Excel.utils.aoa_to_sheet(users)
私はここが初めてです.✌️ 5.テーブルの作成
let wb = Excel.utils.book_new()
6.データをシートに載せる Excel.utils.book_append_sheet(wb, ws, 'users ')//
7.最後にファイルフローの設定を行います.let buf = Excel.write(wb, {
type: 'buffer',
bookType: 'xlsx'
})
8.ファイル名などを設定するlet filename = 'users.xlsx'
ctx.set('Content-disposition', 'attachment; filename=' + filename);
ctx.type = "xlsx"
ctx.body = buf
return buf
9.やってみたら成功するはずです.9.中国語の表がほしいです.
!
const fields = [ 'firstName', 'lastName', 'email', 'describe.introduce', 'describe.age']
const titles = {
firstName: ' ',
lastName: ' ',
email: ' ',
'describe.introduce': ' ',
'describe.age': ' '
}
const ws = Excel.utils.json_to_sheet(
users,
{
header: fields
}
)
const range = Excel.utils.decode_range(ws['!ref'])
for(let c = range.s.c; c <= range.e.c; c++) {
const header = Excel.utils.encode_col(c) + '1'
ws[header].v = titles[ ws[header].v ]
}