Javascript ReferenceError-未定义交叉筛选器

Javascript ReferenceError-未定义交叉筛选器,javascript,d3.js,crossfilter,Javascript,D3.js,Crossfilter,在我们将d3、dc和crossfilter js文件更新为当前文件后,我们得到:在dc.js(1.7.5)行上没有定义crossfilter错误- this.dc=_dc(d3,交叉滤波器) 以下是html的编码方式: <script type="text/javascript" src="/js/jquery.min.js"></script> <script src="https://d3js.org/d3.v4.js"></script>

在我们将d3、dc和crossfilter js文件更新为当前文件后,我们得到:在dc.js(1.7.5)行上没有定义crossfilter错误-

this.dc=_dc(d3,交叉滤波器)

以下是html的编码方式:

<script type="text/javascript" src="/js/jquery.min.js"></script>
<script  src="https://d3js.org/d3.v4.js"></script>
<script  src="https://d3js.org/d3-time.v1.min.js"></script>
<script  src="https://d3js.org/d3-time-format.v2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/dc/1.7.5/dc.js">   </script> 
 <script type="text/javascript" src="/js/bootstrap.min.js"></script>    
<script src="https://cdnjs.cloudflare.com/ajax/libs/crossfilter/1.3.12/crossfilter.js"></script>   

<script type="text/javascript" src="/js/url.min.js"></script>
<script type="text/javascript" src="/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="/js/combodate.js"></script>

不确定升级现在是否需要另一个js文件?我们之前使用的crossfilter.js是1.3.11,我们使用的dc文件是dc.min.js dc2.0.0-beta.14


提前感谢您的帮助

您需要在dc.js中使用d3版本3,而不是版本4,并且您需要以正确的顺序加载脚本。d3.js和Crossfilter需要在dc.js之前加载。

您需要在dc.js中使用d3版本3,而不是版本4,并且您需要按照正确的顺序加载脚本。d3.js和Crossfilter需要在dc.js之前加载。

您是否更改了加载脚本的顺序?您在交叉筛选之前加载了dc.js。我刚刚做了您建议的@Jecoms更改,现在我得到-TypeError-d3.time在dc.js行-dc.dateFormat=d3.time.format(“%m/%d/%Y”)上未定义;我认为d3函数现在是d3.timeFormat,而不是d3.time.format。我将d3更改为-cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.js“>并重新运行,现在得到错误-chart.data()不是index.js中的函数。[servicePieChart,operationPieChart,timeDetailsChart].forEach(function(chart,I){var chartData=chart.data()我不知道你包含脚本的顺序实际上是保证它们按顺序加载的。你可能想考虑一个脚本加载程序/构建系统,比如WebPACK。你是否改变了你加载脚本的顺序?在交叉过滤器之前,你已经加载了D.JS。我刚刚做了你建议的“Jecoms”,现在我正在做。peError-d3.time在dc.js行-dc.dateFormat=d3.time.format(“%m/%d/%Y”);我认为d3函数现在是d3.timeFormat,而不是d3.time.format。我将d3改为-cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.js“>并重新运行,现在得到错误-chart.data()不是index.js中的函数。[servicePieChart,operationPieChart,timeDetailsChart].forEach(函数(chart,i){var chartData=chart.data()我不知道你包含脚本的顺序实际上是保证它们按顺序加载的。你可能想考虑一个脚本加载程序/构建系统,比如WebPACK。在我创建了一个PysCAR-ValpSerieCalc= DC。;dc_标志现在返回为true,在返回为1之前。我还有另一个pieChart现在返回为true,对于u dc_u标志,在返回为2之前。因此我认为这就是导致错误的原因-chart.Data()不是一个函数。有什么想法可以纠正这个问题吗?谢谢!这似乎是一个单独的问题?如果你原来的问题得到解决,我建议你拿出一个例子并创建一个新的问题。我不理解评论中描述的问题。对不起。我按照你的建议整理了js,我将d3改为-我想你应该就此提出一个单独的问题。这是一个不同的问题。但是,不要使用d3 3.0.0。这已经非常旧了。请使用3.x链中的最新版本。我想这是在我创建一个pieChart-var servicePieChart=dc.pieChart(“服务饼图”)之后;dc_标志现在返回为true,在返回为1之前。我还有另一个pieChart现在返回为true,对于u dc_u标志,在返回为2之前。因此我认为这就是导致错误的原因-chart.Data()不是一个函数。有什么想法可以纠正这个问题吗?谢谢!这似乎是一个单独的问题?如果你原来的问题得到解决,我建议你拿出一个例子并创建一个新的问题。我不理解评论中描述的问题。对不起。我按照你的建议整理了js,我将d3改为-我想你这应该是一个单独的问题。这是一个不同的问题。但是,不要使用d3 3.0.0。这是非常旧的。使用3.x链中的最新版本。我认为这是