@d3fc/d3fc-data-join

中文文档
6.0.3发布于 2020/09/24MITESM + CJS零依赖近 30 天下载 7.4万

简化 D3 数据的组件加入并支持 d3fc 装饰模式

中文使用文档

d3fc-数据连接

环绕 D3 数据的一圈,简化了 遇到的一些共同问题 我们的特殊使用模式,并便利 d3fc 装饰 模式。 这些标准不会普遍适用。 与往常一样,理解抽象和在许多情况下加入香草数据可能比较简单或表现更好.

这篇博客文章(有数据连接的构建组件介绍这一构成部分的理由.

主要 D3FC 软件包

安装

npm install @d3fc/d3fc-data-join

API 参考

数据join组件是一个围绕d3所选择的All/data数据-join的相对轻量级包装器,它允许对结果进行装饰. 这是通过在打开前将元素附加到输入选择中来实现的. 默认的淡出/淡出过渡也被隐含地添加,但可以被修改.

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 页:1.数据([元素[, 类Name)

构造一个新的数据连接组件实例。 可选的 element 或一个 element (单位:千美元) className 可以指定,这在功能上相当于调用下文定义的方法.

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 数据(单位:千美元)选择[, 数据)

使用一个 selection 包含父元素和 data 将合并.

import { dataJoin } from 'd3fc-data-join';
import { select } from 'd3-selection';

const join = dataJoin('li', 'animal');

join(select('ul'), ['Aardvark', 'Beaver', 'Cat'])
  .text(d => d);

返回值是一个包含所有新和已存在的节点的选项。 为检索只包含新节点的选题,还暴露出另外两种方法(.enter())和被移除的节点(.exit()) (中文(简体) ).

import { dataJoin } from 'd3fc-data-join';
import { select } from 'd3-selection';

const join = dataJoin('li', 'animal');

const update = join(select('ul'), ['Aardvark', 'Beaver', 'Cat'])
  .text(d => d);

update.enter()
  .attr('data-', d => d);

若为 d3-transition ,新的节点将应用已淡出过渡,而去除的节点将应用已淡出过渡。 过渡时间可以从集装箱选择中或通过明确设置加以控制 transition。 。 。 .

import { dataJoin } from 'd3fc-data-join';
import { select } from 'd3-selection';
import { transition } from 'd3-transition';

const quickTransition = transition()
  .duration(300);

const join = dataJoin('li', 'animal');

const container = select('ul')
  .transition(quickTransition);

join(container, ['Aardvark', 'Beaver', 'Cat'])
  .text(d => d);

要禁用过渡, 请在传递到 -

import { dataJoin } from 'd3fc-data-join';
import { select } from 'd3-selection';
import { transition } from 'd3-transition';

const quickTransition = transition()
  .duration(300);

const join = dataJoin('li', 'animal');

const root = select('body')
  .transition(quickTransition);

const container = root.select('ul')
  .selection();

join(container, ['Aardvark', 'Beaver', 'Cat'])
  .text(d => d);

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 数据。 。 。 .元素(单位:千美元)元素(中文(简体) )

设置用于选择元素和创建用于插入的元素的元素名称。 默认为 SVG g 键。 见 className 用于描述所使用的选择器.

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 数据。 。 。 .类Name(单位:千美元)类Name(中文(简体) )

设置用于选择元素并应用到插入元素的类名。 默认为 null如果设置为 null,仅指 element 用作选择器。 如果非无,则选择器提供给 selectAll 这是 -

`${element}.${className}`

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 数据。 。 。 .键(单位:千美元)密钥(中文(简体) )

指定数据连接所用的关键函数。 基于索引的默认值 。 相当于指定 key 调用时的参数 selection.data()。 。 。 .

{\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} 数据。 。 。 .过渡(单位:千美元)过渡(中文(简体) )

指定未作为容器提供暗中过渡时使用的过渡。 默认为 null 用于禁用过渡.

版本与发布记录

@d3fc/d3fc-data-join 共发布 17 个版本,首次发布于 2018/08/02;过去 12 个月发布了 0 个版本。

版本发布日期距今
6.0.3latest2020/09/246 年前
6.0.22020/09/166 年前
6.0.12020/07/146 年前
6.0.02020/04/166 年前
5.1.02020/03/196 年前
5.0.112019/11/286 年前

关于 @d3fc/d3fc-data-join 的常见问题

@d3fc/d3fc-data-join 是什么?

简化 D3 数据的组件加入并支持 d3fc 装饰模式

如何安装 @d3fc/d3fc-data-join?

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

@d3fc/d3fc-data-join 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/d3fc__d3fc-data-join 是否存在。

@d3fc/d3fc-data-join 支持 ESM 还是 CommonJS?

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

@d3fc/d3fc-data-join 可以商用吗?

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

@d3fc/d3fc-data-join 的下载量有多少?

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

@d3fc/d3fc-data-join 还在维护吗?

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