使库仅可用于特定功能

时间:2014-09-10 09:24:51

标签: javascript

我正在使用Chart.js制作一些图表。

不幸的是,这个库没有我想要的所有图表。

然而, 我发现fork of this library实现了我需要的其余图表,但它们缺少功能。

  

我不能经常使用这两个库,因为它们与每个库冲突   其他。是否有可能在全球范围内无法访问一个库,但是   只能从某个功能访问?

E.g:

//This function to interact only with Chart.js
        var myLineChart = new Chart(ctx).Line(data, {
        bezierCurve: false, pointDotRadius : 10
    });

//But this to interact only with ChartNew.js

        var myStackedBarChart = new Chart(ctx).StackedBar(data, options);

1 个答案:

答案 0 :(得分:2)

Chart.js包含得很好,避免创建Chart以外的任何全局符号,甚至提供jQuery样式的noConflict,如果你发布了Chart的前一个值需要它。

可悲的是,叉子遍布整个地方。

所以你可以先包括fork,然后包括Chart.js,然后这样做:

var RealChart = Chart.noConflict();

此时,Chart引用分叉,RealChart引用Chart.js

不幸的是,你将拥有分叉创建的全局变量。您可以考虑编辑文件以包含它们(有关方法,请参阅Chart.js。)