npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

pikaz-excel-js

v1.0.3

Published

A Excel Component By JavaScript

Downloads

1,354

Readme

介绍

导入导出excel的js插件,在xlsx和xlsx-style的基础上做了简单的封装,开箱即用。

特性

  • 支持导出excel文件,并可设置列宽,边框,字体,字体颜色,字号,对齐方式,背景色等样式。
  • 支持excel文件导入,生成json数据,考虑到客户端机器性能,导入大量数据时,推荐拆分数据分成多个文件导入。

版本更新

本插件库已更新至1.x版本,历史版本0.2.x文档请看这里

  • 新版本改为纯js库,支持多种框架如vue2, vue3, react及无其他依赖的html中使用
  • 合并项与单元格格式中的单元格名称,现在支持传入数字,而非只能使用excel单元格名称,如第一行第三列,可使用A3或3-1

demo示例点击这里体验

demo代码点击这里一键copy

安装

使用npm或yarn

yarn add pikaz-excel-js

npm i -S pikaz-excel-js
import {
    excelExport,
    excelImport
} from 'pikaz-excel-js'

使用cdn引入

<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/pikaz-excel-js"></script>
或者
<script type="text/javascript" src="https://unpkg.com/pikaz-excel-js"></script>
const {
    excelExport,
    excelImport
} = window.pikazExcelJs

导出函数

函数示例

  import {
      excelExport
  } from 'pikaz-excel-js'
  excelExport({
      sheet: [{
          // 表格标题
          title: "水果的味道1",
          // 表头
          tHeader: ["种类", "味道"],
          // 数据键名
          keys: ["name", "taste"],
          // 表格数据
          table: [{
                  name: "荔枝",
                  taste: "甜",
              },
              {
                  name: "菠萝蜜",
                  taste: "甜",
              }
          ],
          sheetName: "水果的味道1",
      }]
  })

函数参数:

参数|说明|类型|可选值|默认值 -|-|-|-|- bookType|文件格式|string|xlsx|xlsx filename|文件名称|string|--|excel sheet|表格数据,每个表格数据对象配置具体看下方表格配置|object[]|--|-- beforeStart|处理数据之前的钩子,参数为导出的文件格式,文件名,表格数据,若抛出Error则停止导出|function(bookType, filename, sheet)|--|-- beforeExport|导出文件之前的钩子,参数为blob文件流,文件格式,文件名,若抛出Error则停止导出|function(blob, bookType, filename)|--|-- onError|导出失败的钩子,参数为错误信息|function(err)|--|--

参数|说明|类型|可选值|默认值 -|-|-|-|- title|表格标题,自动设置合并,非必须项|string|--|-- tHeader|表头, 非必须项|string[]|--|-- table|表格数据,如果无数据,设置为空字符"",避免使用null或undefined|object[]|--|-- merges|合并两个单元格之间所有的单位格,支持excel行列格式或数字格式(如合并第一排第一列至第一排第三列为'A1: A3'或'1-1:3-1'),合并的表格单元多余数据项以空字符串填充,非必须项|string[]|--|-- keys|数据键名,需与表头内容顺序对应|string[]|--|-- colWidth|列宽,若不传,则列宽自适应(自动列宽时数据类型必须为string,如有其他数据类型,请手动设置列宽)|number[]|--|-- sheetName|表格名称|string|--|sheet globalStyle|表格全局样式,具体参数查看下方表格全局样式|object|--|表格全局样式 cellStyle|单元格样式,每个单元格对象配置具体参数查看下方单元格样式|object[]|--|--

其他属性与表格全局样式设置方式一致

导入函数

函数示例

  import {
      excelImport
  } from 'pikaz-excel-js'
  excelImport().then(res => {
      console.log(res)
  })

函数参数:

参数|说明|类型|可选值|默认值 -|-|-|-|- file|导入的文件,若不传,则自动调起上传功能|file|--|null sheetNames|需要导入表的表名,如['插件信息'],若不传则读取excel中所有表格,非必传|string[]|--|-- removeBlankspace|是否移除数据中字符串的空格|Boolean|true/false|false removeSpecialchar|是否移除不同版本及环境下excel数据中出现的特殊不可见字符,如u202D等, 使用此功能,返回的数据将被转化为字符串|Boolean|true/false|true beforeImport|文件导入前的钩子,参数file为导入文件|function(file)|--|-- onProgress|文件导入时的钩子|function(event, file)|--|-- onChange|文件状态改变时的钩子,导入文件、导入成功和导入失败时都会被调用|function(file)|--|-- onSuccess|文件导入成功的钩子,参数response为生成的json数据|function(response, file)|--|-- onError|文件导入失败的钩子,参数error为错误信息|function(error)|--|--