首页 > 其他分享 >yearrecord——一个类似痕迹墙的React数据展示组件

yearrecord——一个类似痕迹墙的React数据展示组件

时间:2024-07-17 16:20:40浏览次数:10  
标签:记录 React item yearrecord 个人主页 组件

介绍一下自己做的一个类似于力扣个人主页提交记录和GitHub主页贡献记录的React组件。
下图分别是力扣个人主页提交记录和GitHub个人主页的贡献记录,像这样类似痕迹墙的形式可以比较直观且高效得展示一段时间内得数据记录。

然而要从0实现这个功能还是有一些麻烦得,并且该功能可用的场景也比较多,于是便把它做成了一个通用的组件,只需要提供数据即可渲染这样的效果。

如何使用

安装

在一个React项目中:

npm install yearrecord

使用

引入后当成普通的组件通过data这个prop传递数据即可,也可以不传递任何的prop,这样将使用随机生成的数据,颜色、尺寸等将使用使用默认值。

import YearRecord from "yearrecord"

function App() {

  return (
    <>
      <YearRecord
        themeColor="green"
        tooltipTitileFunc={item => `${item.year}年${item.month}月${item.day}日, ${item.data}次浏览`}
      ></YearRecord>
    </>
  )
}

export default App

然后可得到如下的渲染结果:

在这里插入图片描述
组件提供了较高的可配置能力,可通过props自定义主题颜色、间距、尺寸、tooltip title等等,具体可参考项目主页的API表格。

目前该组件仅完成了比较核心的功能,相对于GitHub的贡献记录还有一些特性没有实现,如果有感兴趣的小伙伴,欢迎来给这个组件提issue、提pr,如果能给一个star就更好了

标签:记录,React,item,yearrecord,个人主页,组件
From: https://www.cnblogs.com/qgqb/p/18307683

相关文章

  • iOS开发基础119-组件化
    一、引言组件化是将应用程序分解成多个独立模块的设计方法,这些模块可以单独开发、测试和维护。对于大型iOS项目,组件化能够提高开发效率、降低耦合、增加代码复用性,并且使项目更易维护。本文将详细介绍如何在iOS项目中实现组件化,包括本地组件管理和远程组件管理。二、为什么......
  • Java中的响应式编程与Reactor框架使用详解
    Java中的响应式编程与Reactor框架使用详解大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!一、引言响应式编程是一种面向数据流和变化传播的编程范式,它适用于处理异步数据流和事件驱动的场景。Reactor框架是在Java中实现响应式编程的强大工具,本文将深入......
  • 微服务组件之Gateway
    一、什么是路由网关(Gateway)?路由网关(Gateway)是微服务架构中的一种关键组件,它在服务之间以及客户端和服务之间起到路由和分发请求的作用。在微服务架构中,服务通常是分布式的,并且可能有很多独立的服务运行在不同的主机和端口上二、Gateway有哪些特性?请求路由:将进入的请求路由到......
  • 服务注册/发现-Eureka-微服务核心组件【分布式微服务笔记02】
    服务注册/发现-Eureka-微服务核心组件【分布式微服务笔记02】服务注册/发现-Eureka目前主流的服务注册&发现的组件是Nacos,但是Eureka作为一个老牌经典的服务注册&发现技术还是有必要学习一下,原因:一些早期的分布式微服务项目使用的是Eureka,在工作中,完全有可能遇到.后......
  • 创建react项目
    1.创建项目npxcreate-react-appname//1.npxnode的工具命令//2.create-react-app创建react项目的固定写法//3.name项目名称2.目录结构              重点关注src目录,入口文件为src/index.js,也就是运行的起点,导入项目的根组件并......
  • ruoyi-flow 是一个轻量、灵活的工作流引擎, 真正的国产工作流引擎 (非BPM)。 其特点简洁
    ruoyi-flow项目概述项目介绍ruoyi-flow是一个轻量、灵活的工作流引擎,真正的国产工作流引擎(非BPM)。其特点简洁轻量、独立组件、易扩展、易集成,且还拥有一个简洁美观的流程设计器。项目背景开源的流程引擎也好状态机引擎也好不可谓不多,他们的优点是功能很完备,缺点也是功能......
  • 支付宝小程序踩坑---父组件给子组件传值时,事件名必须以on开头?
    遇到了一个坑,当我让父组件给子组件传值的时候,传普通的变量也就算了,用花括号一包就行了,但是我的方法为啥传过去就成了字符串。我真的试了半天,怎么都不好使,我就睡下了,早上又看了一下,发现其他的方法名传过去都有一个共同的特性就是要以on开头,索性我也试一下吧,结果怎么着,真的传过去......
  • vue3 | 通信组件之provide 与 inject实现兄弟组件通信
    一、vue3|通信组件之provide与inject实现兄弟组件通信 通过共同祖先组件使用provide与inject来提供和注入状态,从而实现兄弟组件通信的示例。例子:祖先组件提供了一个名为 sharedState 的响应式状态,并通过 provide 函数将其提供给所有子组件。ChildA 和 ChildB ......
  • 这可能是本年度最好用的 Dagger2 使用教程 三(依赖注入器的依赖、子组件、Lazy、Provid
    在上一个文章中,我们介绍了Dagger中的限定和范围注解,现在我们将视线转移到依赖注入器来,先介绍这个组件的依赖的两种方式,再介绍两个常用的类型。强烈建议先看完上一个文章:这可能是最详细的Dagger2使用教程二(限定注解@Named、@Qulifier和范围注解@Singleton、@Scope)......
  • vue 使用svg文件图片或者组件方式
    代码<template><!--svg使用--><divclass="box"><div><!--设置stylefill:ref方式可以直接修改svg颜色样式--><svgstyle="fill:red"xmlns="http://www.w3.org/2000/svg"......