@antv/react-g

中文文档
2.1.3发布于 2026/10/16MITTypeScriptESM + CJS近 30 天下载 8317

反应为 @ antv/ g

中文使用文档
文档目录5 节
  1. 安装
  2. 使用量
  3. 基本用途
  4. 使用 ref 访问形状实例
  5. render 对目标克元素的反应-g组件

反应-g

反应为 @ antv/ g

安装

npm i @antv/react-g

使用量

反应- g 提供主机组件 :

  • 集装箱: Canvas 财务报告和审定财务报表 Group。 。 。 .
  • 形状 : Text, (中文(简体) ), Circle, (中文(简体) ), Ellipse, (中文(简体) ), Image, (中文(简体) ), Line, (中文(简体) ), Marker, (中文(简体) ), Path, (中文(简体) ), Polygon 财务报告和审定财务报表 Polyline。 。 。 .

基本用途

import React, { useState } from 'react';
import { Canvas, Circle } from '@antv/react-g';
import { Renderer as CanvasRenderer } from '@antv/g-canvas';

const renderer = new CanvasRenderer();

const App = () => {
    const [size, setSize] = useState(50);
    return (
        <Canvas width={600} height={400} renderer={renderer}>
            <Circle
                cx={100}
                cy={200}
                r={size}
                fill="#1890FF"
                stroke="#F04864"
                lineWidth={4}
                onClick={() => {
                    setSize(100);
                }}
            />
        </Canvas>
    );
};

export default App;

使用 ref 访问形状实例

就像反应大小,你可以使用 ref 访问形状实例.

import React, { useState, useRef } from 'react';
import { Canvas, Circle } from '@antv/react-g';
import { Renderer as CanvasRenderer } from '@antv/g-canvas';

const renderer = new CanvasRenderer();

const App = () => {
    const circleRef = useRef();
    const [size, setSize] = useState(50);
    return (
        <Canvas width={600} height={400} renderer={renderer}>
            <Circle
                ref={circleRef}
                cx={100}
                cy={200}
                r={size}
                fill="#1890FF"
                stroke="#F04864"
                lineWidth={4}
                onClick={() => {
                    setSize(100);
                }}
            />
        </Canvas>
    );
};

export default App;

render 对目标克元素的反应-g组件

  • 110. 反应-克-克-克-(Canvas/Group/Shape)/*/
  • * 反应-克 * * g2,g6 * * *
import React, { useState } from 'react';
import { Canvas as GCanvas } from '@antv/g';
import { Circle, render } from '@antv/react-g';
import { Renderer as CanvasRenderer } from '@antv/g-canvas';

const renderer = new CanvasRenderer();

const CircleComponent = () => {
    const [size, setSize] = useState(50);
    return (
        <Circle
            cx={100}
            cy={200}
            r={size}
            fill="#1890FF"
            stroke="#F04864"
            lineWidth={4}
            onMouseenter={() => {
                setSize(100);
            }}
            onMouseleave={() => {
                setSize(50);
            }}
        />
    );
};

const canvas = new GCanvas({
    container: 'container', // DOM 节点id
    width: 600,
    height: 500,
    renderer,
});

// canvas can also be group/shape
render(<CircleComponent />, canvas);

版本与发布记录

@antv/react-g 共发布 257 个版本,首次发布于 2022/01/18;过去 12 个月发布了 9 个版本。

版本发布日期距今
2.1.3latest2026/10/1621 天前
2.1.22026/10/1026 天前
2.3.12026/05/195 个月前
2.2.12026/05/195 个月前
2.1.12025/12/2410 个月前
2.1.02025/12/2210 个月前

其他发布通道:next → 2.0.15,alpha → 2.0.16-alpha.0,beta → 2.0.45-beta.0。

关于 @antv/react-g 的常见问题

@antv/react-g 是什么?

反应为 @ antv/ g

如何安装 @antv/react-g?

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

@antv/react-g 支持 TypeScript 吗?

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

@antv/react-g 支持 ESM 还是 CommonJS?

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

@antv/react-g 可以商用吗?

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

@antv/react-g 的下载量有多少?

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

@antv/react-g 还在维护吗?

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