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

jupiter-table

v1.0.9

Published

导表工具

Downloads

6

Readme

使用指南


[toc]

介绍

jupiter-table是一个基于Node.js的表格转换工具,可以将Excel表格转换为TypeScript代码和JSON文件,方便TypeScript脚本语言编程者使用。

生成 interface.ts 示例:

// 表格转换接口
// 创建者:JupiterOcean
// 创建日期:2024/6/21 15:02:33
// 版本:1.0.1

export enum E_COLOR {
	GREEN = 1,
	RED = 2,
	YELLOW = 3,
	WHITE = 4,
	BLACK = 5,
	PUPLE = 6,
	/** 特殊颜色 */
	SPECIAL = 7,
}

export enum E_ITEMTYPE {
	/** 货币 */
	MONEY = "money",
	/** 纯道具 */
	ITEM = "item",
	EQUIP = "equip",
	/** 魔法道具 */
	MAGIC = "magic",
}

export interface Item {
	/** 道具ID */
	id: number;
	/** 道具数量 */
	num: number;
}

export interface ItemConfig {
	/** ID */
	Id: number;
	Name: string;
	/** 类型 */
	Type: number;
	/** 描述 */
	Desc: string;
}

安装

推荐直接拉取使用

git clone https://gitee.com/jupiter-ocean/table-tool.git

使用

直接使用脚本:

根路径下有一个一键导表.bat工具,双击运行即可。此时会将table目录下所有xlsx表格转换为对应的TypeScript代码和JSON文件并保存在tableOut目下。

自定义配置后使用脚本:

先打开根路径下的config.json文件:根据自己的项目需求修改对应的配置,然后再双击运行一键导表.bat工具。

{
  "server": {                                    // 服务器配置
    "exportCodePath": "",                        // 导出TypeScript代码路径
    "exportJsonPath": ""                         // 导出JSON文件路径
  },
  "client": {                                    // 客户端配置
    "exportCodePath": "tableOut",                // 导出TypeScript接口路径
    "exportJsonPath": "tableOut"                 // 导出JSON文件路径
  },
  "excelPath": "table",                          // 原始表格路径
  "isTest": true,                                // 测试模式
  "arraySplitFlag": "|",                         // 数组分隔符
  "structSplitFlag": "~",                        // 结构属性分隔符
  "deleteOldFile": true                          // 导出时先删除旧文件
}

表格规则

普通表格:

  • 第一行是定义字段英文名,推荐大驼峰法命名, eg: Id, Name, Age。**其中 Note note ** 字段会被忽略,用作注释列**。字段不可缺失,缺失字段此列不会被导出。
  • 第二行是定义字段所属方,C 客户端 S 服务端 CS 二者皆要 不填则都不会导出。
  • 第三行是字段的注释,可选,推荐使用中文。
  • 第四行是数据类型,可以使用一下基本数据类型或者在全局结构表和全局枚举表中定义的结构。类型不可缺失,缺失类型此列不会被导出。
type baseType = "string" | "number" | "boolean" | "string[]" | "number[]";
  • 第五行开始是数据,每行对应一条数据,属性字段之间用~分隔,数组用|分隔。eg: 1~2|11~3 使用 Item[]结构就表示:
[
  { id: 1, num: 2 },
  { id: 11, num: 3 },
];
  • 允许有空行,但建议不要有多余的空行。
  • 允许有空值,但只支持基本数据类型,以下是几个基本结构类型空值的状态。
string: ""
number: 0
boolean: false
string[]: []
number[]: []

全局结构表:

  • 名称只能是*q.全局结构表.GlobalStructConfig.xlsx
  • 第一行是中文释义,不可改动
  • 从第二行起是具体的结构定义。
  • 推荐结构名称使用大驼峰法,eg: Item, MyObject。
  • 结构属性名使用小驼峰法,eg: id, name。
  • 结构属性类型只能使用基本数据类型

全局枚举表:

  • 名称只能是*q.全局枚举表.GlobalEnumConfig.xlsx
  • 第一行是中文释义,不可改动
  • 从第二行起是具体的枚举定义。
  • 推荐枚举名称使用全大写,eg: COLOR,ITEM_TYPE。如果是非全大写,转换过程中会改为全大写。
  • 推荐枚举属性使用全大写,eg: RED,TYPE1。如果是非全大写,转换过程中会改为全大写。
  • 在其他普通表格中使用枚举时,类型必须是枚举的名称,具体的值可以是枚举的属性名,也可以是枚举对应属性的值。