{hero}

DataTable.use()

自:DataTables 2.1

获取/设置库或 DataTables 使用的全局对象。

说明

在不使用全局 window 作为其基础的环境(例如 ES 模块)中加载 DataTables 时,你可能需要告诉它可以使用的外部库。例如,DataTables 和 Moment.js 或 Luxon 用于处理格式化的日期和时间。在浏览器中,这些库会自动附加到全局 window,但模块加载器中则不可能发生这种情况。对于此类情况,请使用此方法使其可供 DataTables 使用。

还可以传入一个 window 对象,这对于在无头环境中构建 DataTable 很有帮助。

重要:如果你将 Moment.js 或 Luxon 设置为用于日期/时间操作的库,则 DataTables 仅期望使用这两个库中的一个。不要同时设置两者。

请注意,此方法在使用 ES 模块或 Common JS 加载时尤其有用。如果使用 script 标签来加载 DataTables 及任何依赖项,则通常不需要使用此方法,因为它们会自动被检测到。

类型

函数 use(type)

说明

获取已设置为使用的库。

参数
返回

任何

将返回 DataTables 当前正在使用的请求库。

函数 use(library)

说明

设置库,或 DataTables 用于操作的全局对象(即 window),比如以自动检测库是什么的方式操作日期和时间。

参数
返回

无返回值。

函数 use(type, library)

说明

设置库,或 DataTables 用于操作的全局对象(即 window),比如操作日期和时间,并指定使用哪个库。

参数
返回

无返回值。

示例

使用 Moment.js 检测格式化日期

import moment from 'moment';
import DataTable from 'datatables.net';

// Tell DataTables that it can use Moment for date formatting
DataTable.use(moment, 'moment');

// Tell DataTables what date format you want to look for in the HTML data
DataTable.datetime('D MMM YYYY');

// Initialise DataTables
new DataTable('#example');

使用 Luxon 将数据呈现为特定格式

import luxon from 'luxon';
import DataTable from 'datatables.net';

// Tell DataTables that it can use Luxon for date formatting
DataTable.use(luxon, 'luxon');

// Initialise DataTables with a specific column formatting date information
new DataTable('#example', {
    columnDefs: [
        {
            targets: 4,
            render: DataTable.render.datetime('d MMM yyyy')
        }
    ]
});