Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么`从'dataTables.net'导入数据表'会在某些机器上工作,而在其他机器上却不工作?_Javascript_Jquery_Vue.js_Datatables - Fatal编程技术网

Javascript 为什么`从'dataTables.net'导入数据表'会在某些机器上工作,而在其他机器上却不工作?

Javascript 为什么`从'dataTables.net'导入数据表'会在某些机器上工作,而在其他机器上却不工作?,javascript,jquery,vue.js,datatables,Javascript,Jquery,Vue.js,Datatables,我们有一个文件Vue 1.x组件,它是数据表的包装器。它的基本原理如下所示: <template> ... </template> <script> import Vue from 'vue'; import $ from 'jquery'; import dataTables from 'datatables.net'; import dataTablesSelect from 'datatables.net-select'; import dataTab

我们有一个文件Vue 1.x组件,它是数据表的包装器。它的基本原理如下所示:

<template>
...
</template>

<script>
import Vue from 'vue';
import $ from 'jquery';
import dataTables from 'datatables.net';
import dataTablesSelect from 'datatables.net-select';
import dataTablesColReorder from 'datatables.net-colreorder';
import dataTablesScroller from 'datatables.net-scroller';

const Table = Vue.extend({
    ...
    created() {
        $.fn.dataTable.ext.errMode = 'throw';
        ...
        this.dataTable = this.$table.DataTable(this.options);
    },
});
</script>
该组件是通过我们的网页配置编译的

这一切都很好。最近,我们一直在将代码库移植到VUE2.x。在我和我同事的机器上,移植组件工作得很好。但是,一旦使用相同的命令在构建服务器上构建了它,它就会在页面加载时抛出此错误: TypeError:无法读取未定义的属性“ext” 参考上面的行: $.fn.dataTable.ext.errMode='throw'

这样看来,在构建服务器上构建数据表时,实际上并没有正确导入数据表。我可以确认是实际生成的app.js导致了问题,因为下载并在本地运行它会产生相同的错误。我已经尝试了我能想到的一切来匹配环境,包括确保node/npm版本相同以及rm-rfing node_模块。然而,我们仍然一再得到同样的结果


我不知道还有什么地方可以调试,因为我不太熟悉网页构建的机制。什么可能会导致这似乎只在某些机器上工作?

该错误意味着没有$.fn.dataTable对象

发布你的网页组合文件以及你如何使用jQuery。我怀疑这里存在外部/多个jQuery冲突,即导入一个jQuery,而DataTable在另一个jQuery上初始化。看看这是否有效

//在导入的正下方,初始化导入的所有内容 //这将确保在导入的jQuery上初始化fn.dataTable //在本例中,它是$reference dataTableswindow,$; dataTablesSelectwindow,$; dataTablesColReorderwindow,$; dataTablesScrollerwindow,$; 无耻的插头,看看我的包装纸在这里-它可能会帮助你更容易。即使使用我的包装器,您也必须知道在哪个jQuery上初始化它