![](/img/trans.png)
[英]How do I configure a date picker with third party js dependencies using Require JS?
[英]How do I configure multiple sources for Data tables using require JS?
我正在尝试使用此数据表 。 但是需要多个JS资源,并且我不确定如何为RequireJS
都配置它们吗? 我试图创建一个垫片,但表格未呈现。
以下是所需的两个文件:
jquery.dataTables.min.js
dataTables.bootstrap.min.js
到目前为止,我已经使用以下配置来部分工作和渲染:
require.config({
paths: {
jquery: 'https://code.jquery.com/jquery-1.11.3.min',
dataTable: 'https://cdn.datatables.net/1.10.10/js/jquery.dataTables.min',
// How do I create a shim for this?
dataTableBootstrap: 'https://cdn.datatables.net/1.10.10/js/dataTables.bootstrap.min'
}
});
在此处实例化:
require(["jquery", "dataTable"], function ($) {
$(function () {
$('#example').dataTable( {
"pagingType": "simple_numbers",
scrollY: '50vh',
scrollCollapse: true,
"scrollX": true,
"bPaginate": true,
"bFilter": false,
"bInfo": true
} );
});
您不需要为其中任何一个进行填充。 它们被识别为requirejs模块,并代替您管理自己的依赖性。 它们都有通用的模块定义格式。 它们都使用define()作为require模块创建自己,并尝试获取其依赖关系。 该依赖关系被命名,其名称是路径或在paths
requirejs配置中定义的名称。
现在,从那些库中,我可以找到它们所需的模块名称。
dataTable boostrap需要2个依赖项["jquery","datatables.net"]
。 jQuery在您的paths
配置中定义得很好,但是找不到datatables.net
,因为您为它定义了不同的名称dataTable
。
这意味着您的dataTable
路径需要更改为datatables.net
datatables.net: 'https://cdn.datatables.net/1.10.10/js/jquery.dataTables.min',
这样,您需要定义/要求的所有依赖项就是jquery
和dataTableBootstrap
define(["jquery", "dataTableBootstrap"], function ($) {
// code here
}
这应该可以解决问题,但是我没有进行测试。
至于垫片。 仅对于非需求js(非AMD)依赖项是必需的,因为您需要自己指定它们的依赖关系。 AMD模块改为管理其依赖性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.