У меня есть следующая таблица данных инициализация, в которой я использую функцию preDrawCallback
, чтобы скрывать и отображать нумерацию страниц и фильтры на основе количества записей в таблице.
Поскольку это часть проекта веб-пакета, я превратил его в es6, но мне пришлось отключить сокращение объекта для функции, поскольку я не могу найти способ получения текущей таблицы без использования this
:
$tables.DataTable({
preDrawCallback: function(settings) { // eslint-disable-line object-shorthand
const $table = $(this); // is there a way to get this table without using this?
// rest of code
}
})
Изучив много документации, кажется, нет аргумента, который они передают в функцию, где я могу получить эту таблицу, и во всех примерах используется $(this)
.
У меня вопрос: нужно ли мне это использовать или есть какой-то другой способ получения таблицы, чтобы я мог изменить именованную функцию на функцию стрелки?
Обновление
Кажется, что я смотрел на неправильную проблему, и мне не нужно было все-таки использовать функции стрелок, и исправление ошибки ворса решило необходимость не использовать this
(см. Ответ ниже), но на всякий случай, если кто-то не ' Я не хочу использовать this
, после большого количества журналов консоли разных вещей, я обнаружил, что текущий идентификатор таблицы содержится в настройках, которые передаются, так что вы можете сделать
$(`#${settings.sTableId}`).DataTable();