浏览数据表

Browserify DataTables

本文关键字:数据表 浏览      更新时间:2023-09-26

我尝试按照NPM包-DataTables的说明进行操作,但仍然无法将其与Browserify捆绑在一起。

以下是我的最小、完整和可验证的示例:

app.js

'use strict'
var $ = require('jquery')
var dt = require('datatables.net-dt')()
$(document.getElementById('table')).DataTable()

npm list的输出

foo@1.0.0 /home/RinkAttendant6/www/foo
├─┬ datatables.net@1.10.10
│ └── jquery@2.1.4
└── datatables.net-dt@1.5.2

browserify app.js -o bundle.js的输出

Error: Cannot find module 'datatables.net-dt' from '/home/RinkAttendant6/www/foo'
    at /usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:46:17
    at process (/usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:173:43)
    at ondir (/usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:188:17)
    at load (/usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:69:43)
    at onex (/usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:92:31)
    at /usr/lib/node_modules/browserify/node_modules/resolve/lib/async.js:22:47
    at FSReqWrap.oncomplete (fs.js:82:15)

我做错了什么?

根据软件包供应商的说法,除非使用Bootstrap或Foundation,否则应使用datatables.net软件包而不是datatables.net-dt

请参阅https://github.com/DataTables/DataTables/issues/434#issuecomment-161278064

改为使用:

var dt = require('datatables.net')()

原因是datatables.net-dt包不包含Javascript文件-它不需要一个-它只包含CSS(它实际上也应该包含几个图像,将在1.10.11中更正)

那里不需要Javascript文件,因为DataTables默认值适合DataTables样式。Bootstrap等的情况并非如此

在github问题线程中使用另一个建议对我有效。

请参阅:https://github.com/DataTables/DataTables/issues/434#issuecomment-113286718

var DataTable = require('datatables.net')()
$.fn.DataTable = DataTable

无论是否使用数据表的可浏览填充项,该代码都能正常工作。