@chakra-dev/dojo-hooks

中文文档
1.0.2发布于 2025/10/24MITTypeScriptCommonJS近 30 天下载 1992

React hooks for dojo app state management

原始使用文档
文档目录11 节
  1. Installation
  2. Overview
  3. Usage
  4. Basic State Management
  5. Global State Access
  6. TypeScript Support
  7. API Reference
  8. useDojoState<T>(initialState?: T)
  9. dojo
  10. Development
  11. License

Chakra Dojo Hooks

npm version
License: MIT

React hooks for dojo app state management.

Installation

npm install @chakra-dev/dojo-hooks

Overview

  • useDojoState: React hook to centralize state management for dojo apps
  • dojo: Global singleton instance for cross-component state sharing

Usage

Basic State Management

import { useDojoState } from "@chakra-dev/dojo-hooks";

function MyComponent() {
  const [state, setState] = useDojoState({ count: 0 });

  return (
    <div>
      <p>Count: {state.count}</p>
      <button onClick={() => setState({ count: state.count + 1 })}>
        Increment
      </button>
    </div>
  );
}

Global State Access

import { dojo } from "@chakra-dev/dojo-hooks";

// Access state from anywhere in your app
console.log(dojo.getState());

// Update state globally
dojo.setState({ user: { name: "John" } });

TypeScript Support

interface AppState {
  user: { name: string; email: string };
  settings: { theme: "light" | "dark" };
}

const [state, setState] = useDojoState<AppState>({
  user: { name: "", email: "" },
  settings: { theme: "light" }
});

API Reference

useDojoState<T>(initialState?: T)

Returns a stateful value and a function to update it, similar to React's useState.

  • Parameters:
    • initialState (optional): Initial state value
  • Returns: [state, setState] tuple

dojo

Global singleton instance providing:

  • getState(): Get current state
  • setState(state): Update state globally

Development

  1. Clone

    git clone https://github.com/Chakra-Network/dojo-spas.git
    cd dojo-spas/dojo-hooks
    
  2. Install

    npm install
    
  3. Build

    npm run build
    
  4. Publish

    • Bump version in package.json
    • npm publish --access public

License

MIT @ Chakra Labs

版本与发布记录

@chakra-dev/dojo-hooks 共发布 3 个版本,首次发布于 2025/10/23;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.2latest2025/10/241 年前
1.0.12025/10/241 年前
1.0.02025/10/231 年前

关于 @chakra-dev/dojo-hooks 的常见问题

@chakra-dev/dojo-hooks 是什么?

React hooks for dojo app state management

如何安装 @chakra-dev/dojo-hooks?

在项目目录运行 npm install @chakra-dev/dojo-hooks,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=16.8.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@chakra-dev/dojo-hooks 支持 TypeScript 吗?

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

@chakra-dev/dojo-hooks 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@chakra-dev/dojo-hooks 可以商用吗?

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

@chakra-dev/dojo-hooks 的下载量有多少?

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

@chakra-dev/dojo-hooks 还在维护吗?

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