Текущая дилемма Табулятор не поддерживает реактивные данные при использовании ajax . Это серьезно ограничивает возможность использования Tabulator в более крупных проектах, поскольку все ваши данные должны храниться локально, что не подходит для проектов, в которых миллионы строк в базе данных, мы все знаем, что это не сработает.
Вот пример форматирования для ячейки:
var nameFormat = function(cell, formatterParams, onRendered){
var value = cell.getValue();
return '<a href="#" @click="openModal()">'+value+'</a>';
}
Я хотел бы открыть модальный компонент из VueJS, когда пользователь щелкает ссылку в таблице, она должна срабатывать openModal()
. Но VueJS не может получить доступ к данным из табулятора.
Как это можно сделать?
Единственный другой вариант, который я вижу, это использование jQuery или vanilla js для показа модального при нажатии, но идти по этому путив плохой практике, так как мне нужно оставаться в рамках реактивной системы SPA.
Я также использую эти опции, которые требуют использования Ajax
ajaxFiltering:true,
ajaxSorting:true,
Ссылки для справки:
http://tabulator.info/docs/4.3/data#ajax
http://tabulator.info/docs/4.3/reactivity
http://tabulator.info/docs/4.3/frameworks#vue