2

我很新react.js,我想使用 react js 准备折线图而不使用其他 js 文件。
是否可以仅使用 react.js 创建一个?

网上展示的例子有D3组件,chart.js等。我不确定这些是否是 react.js 的子产品。我想尽可能避免使用其他 js 文件,只使用 react.js。

4

1 回答 1

2

D3 等与 React 无关。D3 可以与它​​一起使用,尽管不完全(例如没有动画),因为在 React 中,您无法在不更改 prop 或状态的情况下改变 DOM。如果你的页面在 React 不知情的情况下发生了变化,你会得到一个看起来像“不变违规:DOM 意外变异”的错误。您在 React 中使用 D3 的方式是将 SVG 元素视为组件,就像您在应用程序中使用的所有其他元素一样。

实际上,您不需要任何 D3 来执行此操作:只需使用 SVG 元素,例如<svg>,<line>等,就好像它们是常用组件一样,在 div 中绘制您想要的任何内容。请参阅 SVG 文档。

对于折线图,这绝对是可行的。如果您想要一个复杂的图表 - 或漂亮的 - 那么为什么不使用外部库呢?你导入的 js 文件的重量最终可以与你自己的 js 代码的重量相比,除了会少一千倍的错误。

于 2017-09-07T09:59:56.017 回答