@eliseubatista99/react-scaffold-core

中文文档
2.0.2发布于 2026/10/30MITTypeScriptESM + CJS近 30 天下载 2086

一个提供基本组件,钩子,帮助者和提供者的库来方便地构建React应用程序并避免重复通常的代码.

中文使用文档
文档目录13 节
  1. 所需资源
  2. 安装
  3. 快开始
  4. API 概览
  5. 构成部分
  6. 钩子
  7. 供应商和导航
  8. 帮助者
  9. 共享类型
  10. 无障碍和使用说明
  11. API 参考
  12. 发展
  13. 许可证

@eliseubatista99/反应-手腕-核心

可重复使用的组件、钩子、供应商和公用设施 需要帮助。 货包用TypeScript、船舶及其类型申报书写,以及 保留 外部反应和路由器依赖性,以便您的应用程序可以共享其 自己的反应和路由上下文.

所需资源

同伴依赖关系支持的版本用于
react^19.1.0部件和钩子
react-dom^19.1.0反应 DOM 渲染
react-router-dom^7.6.3导航提供者和钩子
react-slick^0.31.0Carousel
dayjs^1.11.19TimeHelper

在应用程序中安装相容的端点依赖性 . lodash 已安装 作为一揽子依赖。 软件包将所需的样式捆绑在一起 slick-carousel; 无需添加 slick-carousel 您的应用程序.

安装

npm install @eliseubatista99/react-scaffold-core \
  react@^19.1.0 react-dom@^19.1.0 \
  react-router-dom@^7.6.3 react-slick@^0.31.0 dayjs@^1.11.19

从应用程序入口导入软件包样式表一次 。 这个 提供 Carousel。 。 。 .

import "@eliseubatista99/react-scaffold-core/dist/react-scaffold-core.css";

快开始

将应用程序包入 FeedbackProvider 用于 Modal, (中文(简体) ), Drawer, (中文(简体) ), Toast, (中文(简体) ), Loader,或 useFeedback启用 NavigationRoutes 在路由器内,您 应用程序已经拥有.

import {
  Button,
  FeedbackProvider,
  Modal,
  NavigationRoutes,
  useFeedback,
} from "@eliseubatista99/react-scaffold-core";
import { BrowserRouter } from "react-router-dom";

function Home() {
  const { showItem, hideItem } = useFeedback();

  return (
    <>
      <Button onClick={() => showItem("welcome")}>Open dialog</Button>
      <Modal
        id="welcome"
        aria-label="Welcome"
        onClickOutsideModal={() => hideItem("welcome")}
      >
        <p>Welcome to the app.</p>
        <Button onClick={() => hideItem("welcome")}>Close</Button>
      </Modal>
    </>
  );
}

export function App() {
  return (
    <FeedbackProvider>
      <BrowserRouter>
        <NavigationRoutes routes={[{ path: "/", render: <Home /> }]} />
      </BrowserRouter>
    </FeedbackProvider>
  );
}

NavigationProvider 也可以作为方便包装,以创建 BrowserRouter. 偏爱 NavigationRoutes 当路由器设置属于您的 应用程序,或者当使用诸如 MemoryRouter。 。 。 .

API 概览

所有公共出口均可从软件包根得到:

import { Button, useFetch, TimeHelper } from "@eliseubatista99/react-scaffold-core";

构成部分

Button, (中文(简体) ), Carousel, (中文(简体) ), Checkbox, (中文(简体) ), Drawer, (中文(简体) ), Form, (中文(简体) ), Image, (中文(简体) ), InputField, (中文(简体) ), Loader, (中文(简体) ), Modal, (中文(简体) ), NumericInputField, (中文(简体) ), PageLayout, (中文(简体) ), ProgressBar, (中文(简体) ), RadioButton, (中文(简体) ), SvgImage, (中文(简体) ), TextAreaField, (中文(简体) ), Toast,以及 Typography。 。 。 .

组件导出其相关道具类型,包括: CarouselSlideProps, (中文(简体) ), DrawerHandleProps, (中文(简体) ), FormSubmitButton, (中文(简体) ), FormSubmitSection,以及 PageLayoutHeaderAndFooterProps。 。 。 .

钩子

  • useDidMount ——为挂载时间设置和清理提供效果帮助.
  • useDrag ——指向元素拖曳.
  • useFetch — 已输入 get, (中文(简体) ), post, (中文(简体) ), put, (中文(简体) ), patch,以及 delete 方法。 。 .
  • useOnScreen - 观察一个元素与 IntersectionObserver。 。 。 .
  • usePointer ——观察主指针位置并按住状态.
  • useResponsive ——解读取景口维度和可配置断点.
  • useTranslations 解决从所提供的语言和字典翻译的问题.

调用部件或自定义钩子的顶级钩子,然后使用它 来自事件处理器或效果的方法:

function UsersButton() {
  const { get } = useFetch();

  const loadUsers = async () => {
    const response = await get<User[]>("/api/users", { active: true });
    // Handle response.result, response.statusCode, and response.error.
  };

  return <Button onClick={loadUsers}>Load users</Button>;
}

useFetch 返回 HTTP 状态代码而不是拒绝 HTTP 错误 回应。 网络错误拒绝承诺; 检查 statusCode 财务报告和审定财务报表 error 当处理结果时.

供应商和导航

  • FeedbackProvider, (中文(简体) ), useFeedback,以及 useFeedbackActions 管理能见度 通过字符串 ID. useFeedback 财务报告和审定财务报表 useFeedbackActions 必须在下面叫 FeedbackProvider。 。 。 .
  • NavigationRoutes 宣布现有反应路由器内的路由,并 观察航行历史.
  • NavigationProvider 提供遗留的便利设置 BrowserRouter。 。 。 .
  • useNavigation 提供 currentPath,观察到 history, (中文(简体) ), goTo, (中文(简体) ), goBack, (中文(简体) ), 财务报告和审定财务报表 searchParams。在兼容的 React 路由器内调用它.

反馈覆盖由他们的ID控制:呼叫 showItem(id) 财务报告和审定财务报表 hideItem(id) 打开并关闭它们. Modal 财务报告和审定财务报表 Drawer 需要一个 可通过 aria-label 或者说 aria-labelledby他们援引 关闭回调但不要隐藏自己; 回调应调用 hideItem(id)。 。 。 . Toast 在它配置的时间后隐藏自己.

帮助者

  • EmailHelper - 邮件口罩.
  • FormsHelper 从窗体输出中向上查看并读取值.
  • NumberHelper ——数字夹克.
  • ObjectsHelper ——深度平等比较.
  • ScrollHelper 检查、禁用和恢复文档滚动.
  • TextHelper ——常见字符串检查和格式化.
  • TimeHelper ——日期/时间帮助和同步等.

共享类型

软件包导出 FormFieldConfiguration, (中文(简体) ), FormFieldInputData,以及 FormFieldOutputData,加上公共组件、钩子和提供者类型. TypeScript声明文件包含在已发布的包中.

无障碍和使用说明

  • 给 Modal 财务报告和审定财务报表 Drawer 可用名称 aria-label 或者说 aria-labelledby。 。 。 .
  • 使用 Button 对于动作; 它默认为 type="button"设置 type="submit" 在提交当地表格时明确.
  • Form 收集已命名的本地输入、文本区和选择。 验证 报告 hasErrors 改为 onSubmit; 并不妨碍回调 运行中,所以在继续提交之前请检查该参数.
  • RadioButton 是一个视觉按钮控制器,而不是本地的收音机输入,并且是 未收集为 Form。 。 。 .
  • NavigationRoutes 只能跟踪在它挂起后观察到的导航。 内容 history 不是浏览器完整历史堆栈的副本.

API 参考

焦点包参考文档组件道具和行为,钩 签名、帮助方法、提供者、共享类型和构建公约:

发展

运行这些命令从 src/packages/core数字 :

npm install
npm run build
npm test
npm run typecheck
npm run lint

npm run build 生成无害环境管理和普通JS捆绑,类型脚本声明, 软件包样式表 dist/。 。 。 . npm run test:package 构建软件包 并针对其已出版的捆绑和路由器进行烟雾测试 一体化.

许可证

麻省理工学院

版本与发布记录

@eliseubatista99/react-scaffold-core 共发布 161 个版本,首次发布于 2025/07/22;过去 12 个月发布了 145 个版本。

版本发布日期距今
2.0.2latest2026/10/3014 天前
2.0.12026/10/2915 天前
2.0.02026/10/2915 天前
1.2.142026/10/2915 天前
1.2.132026/10/2915 天前
1.2.122026/10/2916 天前

关于 @eliseubatista99/react-scaffold-core 的常见问题

@eliseubatista99/react-scaffold-core 是什么?

一个提供基本组件,钩子,帮助者和提供者的库来方便地构建React应用程序并避免重复通常的代码.

如何安装 @eliseubatista99/react-scaffold-core?

在项目目录运行 npm install @eliseubatista99/react-scaffold-core,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:dayjs(^1.11.19)、react(^19.1.0)、react-dom(^19.1.0)、react-slick(^0.31.0)、react-router-dom(^7.6.3)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@eliseubatista99/react-scaffold-core 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@eliseubatista99/react-scaffold-core 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@eliseubatista99/react-scaffold-core 可以商用吗?

@eliseubatista99/react-scaffold-core 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@eliseubatista99/react-scaffold-core 的下载量有多少?

根据 npm 官方下载统计,@eliseubatista99/react-scaffold-core 在 2026/10/14 – 2026/11/12 这 30 天内被下载 2,086 次,日均约 70 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@eliseubatista99/react-scaffold-core 还在维护吗?

最新版本 2.0.2 发布于 2026/10/30(14 天前);至今共发布 161 个版本,其中过去 12 个月发布了 145 个;首次发布于 2025/07/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。