OpenStack 绘制JS(D3)引用与模板

本文详细解析OpenStack中使用饼图绘制的方法,包括如何在模板中引用JS文件,以及JS文件如何实现饼图功能。通过实例分析,展示了如何在不同模板中使用同一JS函数创建饼图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OpenStack 绘制JS(D3)与模板引用

以饼图绘制horizon.d3piechart.js为例看horizon如何引用JS的

首先,/usr/lib/python2.7/site-packages/horizon/templates/base.html


base.html引用了_scripts.html

再看_scripts.html,/usr/lib/python2.7/site-packages/horizon/templates/horizon/_scripts.html


_scripts.html中引用了horizon.d3piechart.js


那么模板中是怎么使用呢?

/usr/share/openstack-dashboard/openstack_dashboard/dashboards/admin/hypervisors/templates/hypervisors/index.html中


这样就出现了三个饼图

为什么?在horizon.d3piechart.js中horizon定义了horizon.d3_pie_chart_distribution


并且通过注册了函数d3_pie_chart_usage,同时经过_scripts.html中

使得函数生效。

ps: horizon模块为所有的js定义了全局变量horizon,当命名空间使用。

horizon.init检测到d3_pie_chart_usage之后,会

查找所有d3_pie_chart_usage这个class的DOM节点来使用函数创建饼图,图表的展示数据来源于h5自带的data标签


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值