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

drip-table

v3.2.1-alpha.13

Published

A tiny and powerful enterprise-class solution for building tables.

Downloads

498

Readme

DripTable 开发文档

DripTable 是动态列表解决方案的核心库,其主要能力是支持符合 JSON Schema 标准的数据自动渲染列表内容。

目录结构

  • 持续更新
├── src                            // 源代码
  ├── components                   // drip-table 依赖的通用组件
  │ ├── ErrorBoundary              // 错误提示组件
  │ ├── Highlight                  // 高亮组件
  │ └── RichText                   // HTML 字符渲染组件
  ├── drip-table                   // drip-table 主要渲染逻辑
  │ ├─ components                  // 内置通用组件
  │ | ├── image                    // 图片展示组件
  │ | ├── link                     // 链接操作组件
  │ | ├── render-html              // 自定义 HTML 渲染组件
  │ | ├── text                     // 文本展示组件
  │ | ├── components.ts            // 组件通用类型定义
  │ | └── index.ts                 // 组件导出
  | ├── header                     // 表格头部渲染
  | ├── utils                      // 工具函数库
  | └── virtual-table              // 虚拟滚动表格
  ├── drip-table-provider          // drip-table 入口文件
  ├── context.ts                   // 全局上下文导出
  ├── hooks.ts                     // 全局属性状态管理
  ├── index.ts                     // 导出
  ├── shims-styles.d.ts            // 样式类型定义
  └── types.ts                     // 全局变量类型定义

开发

开发步骤

  1. Fork。
  2. 创建一个新分支,分支名表达改动内容即可。
  3. docs/drip-table 目录下添加相应的文档说明;
  4. docs/drip-table/changelog 目录下修改版本更改说明;
  5. 提交。
  6. 创建 PR 请求。

注意事项

  • 每个函数式组件 export 之前使用 React.memo 包裹,浅比较 props 来更新包裹的组件
  • 尽量合并相关的 state,不要使用多个 useState。
  • 事件函数不要用箭头函数直接赋值。(参考:如何从 useCallback 读取一个经常变化的值?)
  • 单个组件中不要同时使用 class component 与 function component。

发布

npm 添加 账号,仅第一次添加即可

npm owner add [username] drip-table

版本号定修改规则

  • 主版本号(1):必填,当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。

  • 子版本号(2):必填,当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。

  • 阶段版本号(3):必填,一般是问题修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的问题即可发布一个修订版。此版本号由项目经理决定是否修改。

  • 日期版本号(051021): 可选,用于记录修改项目的当前日期,每天对项目的修改都需要更改日期版本号。此版本号由开发人员决定是否修改。

  • 希腊字母版本号(beta): 可选,此版本号用于标注当前版本的软件处于哪个开发阶段,当软件进入到另一个阶段时需要修改此版本号。此版本号由项目决定是否修改。

git commit -m 'release: drip-table 1.2.3'
lerna run build --stream --scope=drip-table
cd packages/drip-table
npm publish --access=public