在工作中经常用到excel的导入和导出,每次粘贴复制修改参数太过麻烦,于是就在npm造一个轮子方便日后使用。那么怎么造呢?请看下文分解。
1、首先准备好自己的轮子
1.1 文件目录:
1.2 入口文件内容:
const XLSX = require('xlsx')
const FileSaver = require('file-saver')
module.exports = {
// excel的导入,object = { name: '姓名', age: '年龄', workAge: '工作年限' },object对象的value必须和excel表格的表头名称相同,否则会报错,key值可以自己命名
excelToTable(file, object) {
...
},
// excel的导出
tableToExcel(selector, excelName) {
...
}
}
1.3 package.js配置项,注意发布的名称name和一定要有版本号,repository可以写自己提交的github的仓库地址或码云地址,keywords可以写搜索关键词,一定要双引号引起来;以下是我的配置项;
{
"name": "element-ui-excel2Table",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "https://github.com/CJIsabella/element-ui-excel2Table.git"
},
"keywords": [
"element-ui-excel2Table",
"elemnt-ui",
"excel2Table",
"table"
],
"author": "",
"license": "ISC",
"dependencies": {
"file-saver": "^2.0.2",
"xlsx": "^0.16.3"
}
}
2、上传到npm
2.1 nrm ls
首先在终端看看当前是否在npm地址上,不能是淘宝或其他镜像上
2.2 nrm use npm
如果不在npm上就用这行命令切换
2.3 npm whoami
用此命令查看你是否登陆了npmjs的官网账号, 没有注册的自行百度注册,很简单的
2.4 npm login
如果终端提示没有登录npm账号就使用这行命令登录,会提示输入用户名、密码和邮箱
2.5 npm publish --access=public
登录后再用2.3的命令检测是否登录,如果登录就使用这行命令发布到npm上,对于包名的话是不能重复或者有大写字母的,否则会报错
把大写换成小写后就OK了
补充:删除已发布的npm包的命令是:npm unpublish 包名 --force
此包已上传,如需使用可npm i elememt-ui-excel2table自行下载,
github地址为:https://github.com/CJIsabella/element-ui-excel2Table.git
如有错误,请批评指正!