D3 有多受欢迎
D3 是一个开源项目,作者是纽约时报的工程师。D3 项目的代码托管于 GitHub(一个开发管理平台,目前已经是全世界最流行的代码托管平台,云集了来自世界各地的优秀工程师)。
JQuery 的名声够大了,但排名第 6,D3 排名第 5。
如何评价D3.js呢?
d3.js你看成是svg的jQuery就行了。
d3.js的所有操作都是真实的dom操作,这和React的vdom完全是两个思路。
当然,d3.js也有可以先计算节点属性,最后挂上dom树的用法,只不过不常用。
操作SVG dom并不是什么了不起的,任何前端程序员操作都可以再短时间内学会操作SVG。
jQuery式的操作,在今天也不是什么先进的东西。
更何况d3的选择器,在我看来,并不是最适合它的交互方式。
d3厉害的地方在于它建立了一整套数据到SVG属性的计算框架,
常用Data visualization模型,大多都可以再d3.layout里面找到,
你常用的几何图形,在d3.svg里面都有。
它为不理解SVG属性计算公式的程序员提供了一整套工具包,让你可以轻松的把数据转换成你想要的SVG属性。而不用把精力耗费在学习如何生成一条path之类的事情上。
现在看来,组件化可以解决HTML排版的很多问题,当然也可以解决SVG排版的问题。
但是,d3作为无数组Data Visualization库的基础,已经太大而不能转型了。
但是你结合d3核心的数学处理模块和最新的组件化框架,很容易就可以做出复用性和易用性都很高的SVG组件。